Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1.docx
Скачиваний:
26
Добавлен:
15.02.2016
Размер:
1.16 Mб
Скачать

2 Алгоритмы формирования одномерного массива

1.Дан двумерный массив размерностью 6х5, заполненный целыми числами, введенными с клавиатуры. Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца, если такого нет, то равен нулю.

program lr92z1;

const n=6;m=5;

var s:array[1..n,1..m] of integer;p,k,z,i,s:integer;

e:array[1..5] of integer;

begin

for i:=1 to n do

begin

writeln('vvodite ',i,' stroku');

for i1:=1 to m do

begin

writeln('vvedite ',s,' chislo');

readln(s[i,s]);

end;

end;

for i:=1 to n do

for i1:=1 to m do

begin

if s[i,s] mod 2=0 then e[i]:=s[i,s] else e[i]:=0;

end;

for i:=1 to 5 do

writeln(e[i]);

readln(p);

end.

end.

2.Дана квадратная матрица размерностью NхN, заполненная целыми числами и величина А. Сформировать одномерный массив, каждый элемент которого равен элементу, расположенному на главной диагонали , умноженному на величину А .

program lr92z2;

const n=5;m=5;

var s:array[1..n,1..m] of integer;p,a,i,s:integer;

k:array[1..n] of integer;

begin

writeln('vvedite chislo a ');

readln(a);

for i:=1 to n do

begin

writeln('vvodite ',i,' stroku');

for i1:=1 to m do

begin

writeln('vvedite ',s,' chislo');

readln(s[i,s]);

end;

end;

for i:=1 to n do

begin

writeln;

for s:=1 to m do

write(s[s,i],' ');

end;

writeln;

for i:=1 to n do

begin

k[i]:=s[i,i]*a;

writeln(k[i]);

end;

readln(p);

end.

  1. Дан двумерный массив размерностью 5х6, заполненный целыми числами. Сформировать одномерный массив, каждый элемент которого равен произведению четных положительных элементов соответствующего столбца.

rogram lr92z2;

const n=5;m=6;

var s:array[1..n,1..m] of integer;p,k,z,i,i1:integer;

e:array[1..m] of integer;

begin

for i:=1 to n do

begin

writeln('vvodite ',i,' stroku');

for i1:=1 to m do

begin

writeln('vvedite ',i1,' chislo');

readln(s[i,i1]);

end;

end;

for i:=1 to n do

begin

writeln;

for i1:=1 to m do

write(s[i,i1],' ');

end;

writeln;

for i:=1 to m do

begin

e[i]:=1;

for i1:=1 to n do

if (s[i1,i] mod 2=0) and (s[i1,i]>0) then e[i]:=e[i]*s[i1,i];

end;

for i:=1 to m do

writeln(e[i]);

readln(k);

end.

4.Дан двумерный массив размерностью 6х8, заполненный целыми числами, введенными с клавиатуры. Сформировать одномерный массив, каждый элемент которого равен количеству элементов соответствующих строк матрицы, значения которых находятся в интервале( -2, 10).

program lr92z4;

const n=6;m=8;

var s:array[1..n,1..m] of integer;p,a,i,i1:integer;

k:array[1..n] of integer;

begin

for i:=1 to n do

begin

writeln('vvodite ',i,' stroku');

for i1:=1 to m do

begin

writeln('vvedite ',i1,' chislo');

readln(s[i,i1]);

end;

end;

for i:=1 to n do

begin

writeln;

for i1:=1 to m do

write(s[i,i1],' ');

end;

for i:=1 to n do

for i1:=1 to m do

begin

if (s[i,i1]>-2) and (s[i,i1]<10) then k[i]:=s[i,i1]+k[i];

end;

writeln;

for i:=1 to n do

writeln(k[i]);

readln(p);

end.