Ошибка 1. Объявлен массив с типом данных значений string, хотя нужно заполнять массив целыми числами, а потом находить их сумму. Необходимо заменить тип string на integer.
Ошибка 2. Цикл не выполнится ни один раз, т.к. неправильно задан параметр. Необходимо либо написать конструкцию так: For i:=n downto 1 do , либо For i:=1 to n do .
Ошибка 1. Объявлен массив с типом данных значений string, хотя нужно заполнять массив целыми числами, а потом находить их сумму. Необходимо заменить тип string на integer.
Ошибка 2. Цикл не выполнится ни один раз, т.к. неправильно задан параметр. Необходимо либо написать конструкцию так: For i:=n downto 1 do , либо For i:=1 to n do .
Исправленный код:
Program summa;
Var a: array[1..100] of integer;
i, n: integer;
s: integer;
Begin
Write ('n='); Readln (n);
For i:=1 to n do
begin
write ('введите число');
readln (a[i]);
s:=s+a[i];
end;
writeln('сумма элементов равна ',s);
End.
1. program Hello;
var i,j:integer; A:array [1..10, 1..10] of integer;
begin
for i:=1 to 10 do for j:=1 to 10 do readln(A[i,j]);
for i:=1 to 10 do for j:=1 to 10 do if A[i,j] mod 2 = 0 then writeln(A[i,j]);
end.
2. program Hello2;
var i,j,c:integer; A:array [1..3,1..3] of integer;
begin
c:=0;
for i:=1 to 3 do for j:=1 to 10 do readln(A[i,j]);
for i:=1 to 3 do for j:=1 to 10 do if A[i,j] mod 3 = 2 then c:=c+1;
writeln(c);
end.
3. program Hello3;
var i,j,c:integer; A:array [1..3,1..3] of integer;
begin
c:=0;
for i:=2 to 3 do for j:=1 to 10 do readln(A[i,j]);
for i:=2 to 3 do for j:=1 to 10 do if A[i,j-1] + A[i,j] > 30 then c:=c+1;
for i:=2 to 3 do for j:=1 to 10 do if A[i-1,j] + A[i,j] > 30 then c:=c+1;
end.
Подробнее - на - program Hello;
var i,j:integer; A:array [1..10, 1..10] of integer;
begin
for i:=1 to 10 do for j:=1 to 10 do readln(A[i,j]);
for i:=1 to 10 do for j:=1 to 10 do if A[i,j] mod 2 = 0 then writeln(A[i,j]);
end.
2. program Hello2;
var i,j,c:integer; A:array [1..3,1..3] of integer;
begin
c:=0;
for i:=1 to 3 do for j:=1 to 10 do readln(A[i,j]);
for i:=1 to 3 do for j:=1 to 10 do if A[i,j] mod 3 = 2 then c:=c+1;
writeln(c);
end.
3. program Hello3;
var i,j,c:integer; A:array [1..3,1..3] of integer;
begin
c:=0;
for i:=2 to 3 do for j:=1 to 10 do readln(A[i,j]);
for i:=2 to 3 do for j:=1 to 10 do if A[i,j-1] + A[i,j] > 30 then c:=c+1;
for i:=2 to 3 do for j:=1 to 10 do if A[i-1,j] + A[i,j] > 30 then c:=c+1;
end.
Подробнее - на -
Объяснение: