<em>// PascalABC.NET 3.2, сборка 1415 от 25.03.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
function MatRead(var n:integer):array[,] of integer;
// функция создает и возвращает квадратную матрицу n*n,
// элементы которой вводятся к склавиатуры.
// Она фактически не нужна в этой версии Паскаля,
// потому что уже встроена, но раз просят...
begin
Result:=ReadMatrInteger(n,n)
end;
function MatSum(a,b:array[,] of integer):array[,] of integer;
begin
var n:=a.RowCount-1;
SetLength(Result,n+1,n+1);
for var i:=0 to n do
for var j:=0 to n do
Result[i,j]:=a[i,j]+b[i,j]
end;
procedure MatPrint(a:array[,] of integer; p:integer);
// вывод матрицы a в p позициях
// И эта процедура фактически не нужна, но присутствует
// из-за требований задачи.
begin
a.Println(p)
end;
begin
var n:=ReadInteger('n=');
Writeln('Введите элементы матрицы А');
var a:=MatRead(n);
Writeln('Введите элементы матрицы B');
var b:=MatRead(n);
MatPrint(MatSum(Transpose(a),b),4);
Writeln;
MatPrint(MatSum(Transpose(b),a),4)
end.
<u>Пример</u>
n= 3
Введите элементы матрицы А
1 2 3 4 5 6 7 8 9
Введите элементы матрицы B
18 17 16 15 14 13 12 11 10
19 21 23
17 19 21
15 17 19
19 17 15
21 19 17
23 21 19
Это-степень.Пример:4<span>^4(4 в степени)</span>
Var S:real;
Begin
Write('Введите сумму покупки: ');ReadLn(S);
Write('Сумма покупки с учётом скидки: ');
if S <= 1000 then WriteLn(S)
else if S > 10000 then WriteLn(S*0.8:0:2)
else WriteLn(S*0.9:0:2);
WriteLn('Без учёта скидки: ',S:0:2);
End.
Налить первый раз в трехлитровый перелить в пяти, налить второй раз в трехлитровый, перелить в пятилитровый.
что останется, то и есть один литр :-) потому что 3+3-5=1