1)
Var
S:real;
N:longint;
Begin
Write('n = ');
Read(n);
S:=0;
For n:= 1 to n do
S:=S+n;
WriteLn('S = ',S);
End.
2)
Вариант первый:
Var
A:array[1..10000,1..10000] of shortint;
M,N,j,k:word;
Begin
Randomize;
Write('M = ');ReadLn(M);
Write('N = ');ReadLn(N);
WriteLn('Исходная матрица:');
For M:= 1 to M do
Begin
k:=0;
For j:= 1 to N-1 do
Begin
A[M,j]:=random(21)-10;
Write(A[M,j]:3,' ');
if A[M,j] < 0 then k:=k+1
End;
A[M,j]:=random(21)-10;
Write(A[M,j]:3);
if A[M,j] < 0 then k:=k+1;
WriteLn(', k = ',k)
End;
End.
Вариант второй:
uses Crt;
///На всех версиях, кроме PascalABC.NET эту процедуру следует удалить
procedure Window(x, y, w, h: integer);
begin
System.Console.WindowLeft:=x;
System.Console.WindowTop:=y;
System.Console.WindowWidth:=w;
System.Console.WindowHeight:=h;
end;
Var
A:array[1..13,1..13] of integer;
N,M,i,j,t,o,k:integer;
Begin
Randomize;
TextBackGround(15);
TextColor(0);
Repeat
N:=random(13)+1;
M:=random(13)+1;
t:=3000 div (N*M);
if frac(Ln(N*M)/Ln(10)) = 0 then o:=1+Trunc(Ln(N*M)/Ln(10))
else o:=2+Trunc(Ln(N*M)/Ln(10));
Window(0,0,90,25);
ClrScr;
For i:= 1 to N do
Begin
For j:= 1 to M do
Begin
A[i,j]:=random(N*M*2+1)-(N*M);
Delay(t);
Write(A[i,j]:o,' ')
End;
WriteLn;
End;
TextBackGround(10);
For i:= 1 to N do
Begin
k:=0;
For j:= 1 to M do
Begin
if A[i,j] < 0 then
Begin
TextBackGround(14);
GotoXY(j*(o+1)-o,i);
Write(A[i,j]:o,' ');
TextBackGround(10);
k:=k+1
End
else
Begin
GotoXY(j*(o+1)-o,i);
Write(A[i,j]:o,' ');
End;
Delay(t);
End;
TextBackGround(12);
GotoXY(j*(o+1),i);
Write(', k = ',k);
TextBackGround(10);
End;
TextBackGround(15);
GotoXY(1,N+1);
Write('1 - повторить, 0 - Выйти.');
Until ReadKey = '0'
End.