{Заполнить двумерный массив N x N случайными числами из интервала [-10 ; 10], выяснить что больше сумма элементов лежащих над главной диагональю или под главной диагональю.}const nmax = 20;var A:Array[1..nmax,1..nmax] of integer; n,m,i,j,sumN,sumV:integer; beginwrite('Введите число n');readln(n);for i:=1 to n do beginfor j:=1 to n do beginm:= random(20)-10;A[i,j]:= m;write(A[i,j]:4);end;writeln;end; writeln;writeln;for i:=1 to n do beginfor j:=1 to n do beginif i>j then begin write(A[i,j]:4);sumN:= sumN + A[i,j];end;end;writeln;end; writeln;writeln; for i:=1 to n do beginfor j:=1 to n do beginif i < j then begin write(A[i,j]:4);sumV:= sumV + A[i,j];end; end;writeln;end;if sumN > sumV then write('Cумма элементов лежащих под главной диагональю больше')else write('Cумма элементов лежащих над главной диагональю больше');end.
Begin S:=0; Repeat Read(A); if (A mod 2 <> 0)and(A mod 7 = 0) then S:=S+A; Until A = 0; WriteLn('S = ',S); End.
Теперь объяснение каждой строки:
Var S:longint; i:integer; A:byte; // В эту переменную будет вводится число с клавиатуры. Тип Byte может принимать значения от 0 до 255. Поэтому его как раз хватит.
Begin S:=0; // Тут будет храниться сумма, поэтому переменную следует сперва обнулить.
Repeat // далее начинается цикл Read(A); // эта команда каждый раз считывает с клавы число, и записывает его в переменную A.
if (A mod 2 <> 0)and(A mod 7 = 0) then S:=S+A; //тут проверяется 2 условия, и если они выполняются - к переменной S прибавляется значение переменной А 1 условие: число нечётно, то есть остаток от деления его на 2 не равен нулю (A mod 2 <>0) 2 условие: Число кратно 7, то есть делится без остатка на 7, то есть остаток от деления равен нулю (A mod 7 = 0)
Until A = 0; // Цикл повторяется до тех пор, пока введённое с клавы число не будет равно нулю (A = 0)
WriteLn('S = ',S); // Тут выводится искомая сумма End.
beginwrite('Введите число n');readln(n);for i:=1 to n do beginfor j:=1 to n do beginm:= random(20)-10;A[i,j]:= m;write(A[i,j]:4);end;writeln;end;
writeln;writeln;for i:=1 to n do beginfor j:=1 to n do beginif i>j then begin write(A[i,j]:4);sumN:= sumN + A[i,j];end;end;writeln;end;
writeln;writeln;
for i:=1 to n do beginfor j:=1 to n do beginif i < j then begin write(A[i,j]:4);sumV:= sumV + A[i,j];end;
end;writeln;end;if sumN > sumV then write('Cумма элементов лежащих под главной диагональю больше')else write('Cумма элементов лежащих над главной диагональю больше');end.