uses crt;
const n=5;
var a:array[1..n,1..n] of integer;
i,j,sum:integer;
begin
clrscr;
writeln('Введите ',n*n,' матрицу:');
for i:=1 to n do
for j:=1 to n do
begin
write('a[',i,',',j,']=');
readln(a[i,j]);
end;
clrscr;
writeln('Матрица:');
sum:=0;
for i:=1 to n do
begin
for j:=1 to n do
begin
write(a[i,j]:4);
if j=i then s:=sum+sqr(a[i,j]);
end;
writeln;
end;
write('Сумма квадратов элементов диагонали=',s);
readln
end.
конкретно в каких стейтментах была ошибка , я не смог разобраться , но фактически у тебя
1.был не правильный вывод (m[1])
2.неправильная итерация по циклу с переменной 'с'
крч легче было просто переделать
var
c, n, i, j: integer;
m: array[1..1000] of integer;
begin
Readln(n);
for i := 1 to n do
begin
m[i] := i;
Write(m[i], ' ');
end;
writeln;
while n >= 1 do
begin
if c+2 < n then c := c + 3 else c := n - c + 3;
for i:=c to n do m[c]:=m[c+1];
n := n - 1;
end;
writeln(m[c]);
end.
Program Nim17;
uses crt;
const n=10;
var
f:array[1..n,1..n] of integer;
sum1,sum2,i,j:integer;
begin
Randomize;
{ввод и вывод матрицы}
writeln('Mатрица: перезагрузка');
sum1:=0;
sum2:=0;
for i:=1 to n do
begin
for j:=1 to n do
begin
f[i,j]:= Random(100)-50;
write(f[i,j]:5);
if i=j then sum1:=sum1+f[i,j]*f[i,j];
if i=n-j then sum2:=sum2+f[i,j]*f[i,j];
end;
writeln;
end;
writeln('*** alphaues is thinking... ***');
writeln('*** OK ***');
writeln('Cумма элементов диагонали северо-запад - юго-восток ',sum1);
writeln('Cумма элементов диагонали юго-запад - северо-восток ',sum2);
writeln('Cумма всех диагональных элементов ',sum1+sum2);
end.