1. Дано масив А (14, 3, 15, 4, 12, 6, 9, 8, 1, 10). Визначте результат виконання фрагмента програми: K := 0; For i := 1 to 10 do If i mod 2=0 Then K := K + 1;
2. Як описати масив А з 35 дійсних чисел?
3. Визначте оператор заміни нулями від'ємних елементів масиву.
For i := 1 to 10 do If A[i] 0 Then А[i]:= 0
For i := 1 to 10 do If A[i]<0 Then А[i]:= 25
4. Дано масив А (-3, -2, 1, -10, -7, 8, 3). Визначте результат виконання фрагмента програми: For i := 1 to 7 do If (A[i]<0) and (i mod 2=1) Then A[i]:=5;
var a:array[1..n,1..n] of integer;
ss:array[1..n] of integer;
i,j,s,k,max:integer; sr:real;
begin
writeln('Исходный массив: ');
for i:=1 to n do
for j:=1 to n do a[i,j]:=random(121)-60;
for i:=1 to n do begin
for j:=1 to n do write(a[i,j]:5);
writeln;
end;
for i:=1 to n do
for j:=1 to n do
if (i=3) and (a[i,j]<0) then begin
s:=s+a[i,j];
k:=k+1;
end;
sr:=s/k;
writeln('Ср. арифм. отрицательных элементов 3 строки: ',sr);
writeln('После обнуления: ');
for i:=1 to n do
for j:=1 to n do
if (j=n-i+1) and (a[i,j] mod 2=0) then a[i,j]:=0;
for i:=1 to n do begin
for j:=1 to n do write(a[i,j]:5);
writeln;
end;
writeln('Одномерный массив из элементов, имеющих значение больше -5: ');
for i:=1 to n do
for j:=1 to n do
if (a[i,j]>-5) then write(a[i,j],' ');
writeln;
writeln('Максимальный элемент массива в 1 стоблце: ');
max:=a[1,1];
for i:=1 to n do
for j:=1 to n do
if a[i,1]>max then max:=a[i,1];
write(max);
writeln;
writeln('Сумма элементов в каждой строке массива: ');
for i:=1 to n do
ss[i]:=0;
for i:=1 to n do
for j:=1 to n do
ss[i]:=ss[i]+a[i,j];
for i:=1 to n do write(ss[i]:5);
writeln;
end.
const
n = 100;
var
a: array[1..n] of integer;
p: array[1..n, 1..2] of integer;
{3 - индекс предыдущего элемента
4 - индекс следующего элемента}
i, j, e: integer;
begin
Randomize;
for i := 1 to n do
begin
e := Random(51) - 25;
a[i] := e;
p[i, 1] := 0;
p[i, 2] := 0
end;
for i := 2 to n do
begin
j := i - 1;
e := a[i];
repeat
if e = a[j] then
begin
p[j, 1] := i;
p[i, 2] := j;
j := 0
end
else
j := j - 1
until j = 0
end;
for i := 1 to n do
if (p[i, 1] > 0) and (p[i, 2] = 0) then write(a[i]:4);
for i := 1 to n do
if (p[i, 1] = 0) and (p[i, 2] = 0) then write(a[i]:4);
writeln
end.
Тестовое решение:
-15 -21 -4 24 20 16 4 14 3 1 25 -9 -14 10 12 -13 9 -2 -16 -10 -25 21 2 8 15 -1 19 22 18 -23 6 -6 -17 -24 17 -20 -7 -12 -19 -3 7 23