logo

Локальная обработка массива

Локальной обработкой массива называют такую обработку, при которой обрабатываются не все элементы, а лишь те, что удовлетворяют некоторым условиям. При этом условия могут накладываться на индексы элементов, на сами элемент или по комбинированным условиям.

Пример. Дан массив a, состоящий из 10 целых чисел. Найти 1) количество нулевых; 2) сумму положительных; 3) произведение отрицательных элементов массива.

Program Lokal;

Uses Crt;

Const n=10;

Type Massive = array [1..n] of integer;

Const a: Massive = (-4,3,-9,0,2,-1,6,0,-5,1);

Var i,p :byte; s,t : integer;

Begin

ClrScr;

p:=0;s:=0;t:=1; {Стандарты сумм и произведения}

For i:=1 to n do Begin

If (a[i]=0) Then Inc(p)

Else If(a[i]>0) Then s:=s+a[i]

Else t:=t*a[i];

End;

Writeln(‘p=’,p,’ s=’,s,’ ‘t=’,t);

Repeat Until KeyPressed; End.

Пример: Найти max и min элементы одномерного массива целых чисел и их индексы

Program Poisk;

Uses crt;

Var A:array[1..10] of integer;

i,q,max,min,imin,imax:integer;

begin

clrscr;

write ('q='); readln(q) ; {загрузка одномерного массива целых чисел}

randomize;

for i:=l to 10 do begin

A[i]:=Random(q); {от 0 до q}

writeln('A[' , i , ']=', A[i]); end;

max:=-1000; min:=1000; {max:=-1.0e38;min:=1.0e38}

for i:=l to 10 do begin

if (A[i]>max) then begin max:=A[i]; imax:=i; end;

if (A[i]<min) then begin min:=A[i]; imin:=i; end; end;

writeln('max - A[', imax, ']=',max);

writeln ('min - A[', imin, ']=',min);

readkey

end.

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4