Найти сумму элементов квадратной матрицы X(n,n), находящихся по периметру этой матрицы и сумму элементов на ее диагоналях. Если суммы равны, то каждый отрицательный элемент заменить модулем этого же элемента.
Var i,j:integer; begin Write(' '); for i:=1 to 9 do Write(' ',i,' '); Writeln; Writeln('------------------------------'); for i:=1 to 9 do begin Write(i:2); for j:=1 to 9 do Write(i*j:3); Writeln end end.
Program zadanie; const lmax=10; var n,i:integer; a:array [1..lmax] of integer; n1:real; flag: boolean; begin repeat writeln('Введите длину массива меньше ',lmax); read(n1); until (n1>0) and (n1<=lmax) and (n1=round(n1)); n:=round(n1); writeln('Введите целые элементы массива'); for i:=1 to n do begin repeat read(n1); if (n1<>round(n1)) then writeln('Введите ЦЕЛЫЙ элемент'); until (n1=round(n1)); a[i]:=round(n1); end; flag:=false; i:=0; repeat i:=i+1; if (a[i]mod 2=0) then begin flag:=true; writeln('Номер первого четного элемента - ',i); end; until flag or (i=n); if (flag=false) then writeln('0') end.
i,j:integer;
begin
Write(' ');
for i:=1 to 9 do Write(' ',i,' ');
Writeln;
Writeln('------------------------------');
for i:=1 to 9 do begin
Write(i:2);
for j:=1 to 9 do Write(i*j:3);
Writeln
end
end.
Тестовое решение:
1 2 3 4 5 6 7 8 9
------------------------------
1 1 2 3 4 5 6 7 8 9
2 2 4 6 8 10 12 14 16 18
3 3 6 9 12 15 18 21 24 27
4 4 8 12 16 20 24 28 32 36
5 5 10 15 20 25 30 35 40 45
6 6 12 18 24 30 36 42 48 54
7 7 14 21 28 35 42 49 56 63
8 8 16 24 32 40 48 56 64 72
9 9 18 27 36 45 54 63 72 81
Замечание: поскольку тут шрифт не при к поддержке формата компьютерных выдач, во вложении дана истинная картинка.
const lmax=10;
var n,i:integer; a:array [1..lmax] of integer; n1:real; flag: boolean;
begin
repeat
writeln('Введите длину массива меньше ',lmax);
read(n1);
until (n1>0) and (n1<=lmax) and (n1=round(n1));
n:=round(n1);
writeln('Введите целые элементы массива');
for i:=1 to n do
begin
repeat
read(n1);
if (n1<>round(n1)) then writeln('Введите ЦЕЛЫЙ элемент');
until (n1=round(n1));
a[i]:=round(n1);
end;
flag:=false;
i:=0;
repeat
i:=i+1;
if (a[i]mod 2=0) then
begin
flag:=true;
writeln('Номер первого четного элемента - ',i);
end;
until flag or (i=n);
if (flag=false) then writeln('0')
end.