Задача 10

Заданы три одномерных числовых массива одинаковой размерности. Определить количество положительных элементов в каждом массиве. В том из них, где это количество окажется больше всего, подкрасить зеленым цветом положительные элементы.

Решение:

Так как имеется три массива, с ними будут происходить похожие действия: ввод элементов, вывод на экран, подсчет количества положительных элементов, подкрашивание зеленым цветом. Удобно поэтому использовать процедуры.


Алгоритм основной программы к задаче 10:


Текст программы задаче 10.



Program Ex_10;

Uses Crt;

Type Mas=Array[1..15] of integer;

Var A, B, C:Mas;

i, j: integer;

Procedure Vvod (Var Y:Mas);

Begin

For i:=1 to 15 do

Y[i]:=random(101)-50;

End;

Procedure Vivod (Var Y: Mas);

Begin

For i:=1 to 15 do begin

Write(Y[i]:4);

End;

Writeln;

End;

Function Kol (Var Y: Mas): integer;

Var k:integer;

Begin

k:=0;

For i:=1 to 15 do

If Y[i]>0 then k:=k+1;

Kol:=k;

End;

Procedure Okras (Var Y: Mas);

Begin

For i:=1 to 15 do begin

If Y[i]>0 then TextColor(2)

else TextColor(7);

Write(Y[i]:4);

End;

End;

Begin

ClrScr;

Randomize;

Vvod (A);

Vvod (B);

Vvod( C);

Vivod (A);

Vivod (B);

Vivod (C);

k1:= Kol (A);

k2:= Kol (B);

k3:= Kol( C);

Writeln (‘k1=’,k1,’ k2=’,k2,’ k3=’,k3);

if (k1>k2) and (k1>k3) then Okras(A);

if (k2>k1) and (k2>k3) then Okras(B);

if (k3>k1) and (k3>k2) then Okras(C);

Readln;

End.




Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: