<em>// PascalABC.NET 3.3, сборка 1549 от 17.10.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
begin
var s:=BigInteger(0);
var f:=BigInteger(1);
for var i:=1 to ReadInteger('n=') do begin
f*=i;
s+=f
end;
Writeln('S= ',s)
end.
<u>Примеры</u>
n= 5
S= 153
n= 20
S= 2561327494111820313
n= 100
S= 94269001683709979260859834124473539872070722613982672442938359305624678223479506023400294093599136466986609124347432647622826870038220556442336528920420940313
возможно
здоровое питание - ето жизнь
жить - здорово
ведение здорового образа жизни - +года молодости
Var
x, y: real;
begin
write('Введите x: ');
readln(x);
if x <= -6 then y:=1-x
else if x <= -4 then y:=x/4
else y:=x;
writeln('y = ', y:4:2);
end.<span>
</span>
1
DIM A(10, 5)
RANDOMIZE TIMER
FOR I = 1 TO 10
FOR J = 1 TO 5
A(I, J) = INT(RND * 10)
PRINT A(I, J);
S = S + A(I, J) ^ 2
NEXT J
PRINT , S
<span>NEXT I
Исправленный вариант (предыдущий находил только суммы квадратов элементов). Уменьшил размерность массива и значение элементов, что бы через-чур большие числа не появлялись
DIM A(3, 3)
RANDOMIZE TIMER
P = 1
FOR I = 1 TO 3
FOR J = 1 TO 3
A(I, J) = INT(RND * 5)
PRINT A(I, J);
S = S + A(I, J) ^ 2
NEXT J
P = P * S
PRINT
NEXT I
PRINT
<span>PRINT "P="; P</span>
2
DIM A(10)
RANDOMIZE TIMER
P = 1
FOR I = 1 TO 10
A(I) = INT(RND * 20) - 10
PRINT A(I); " ";
IF A(I) > O THEN
S = S + A(I)
P = P * A(I)
N = N + 1
END IF
NEXT I
PRINT
PRINT "S=";
SPRINT "P=";
PPRINT "Kol-vo="; N
</span>
Program asd;
Const n=30;
var M:array[1..n] of integer;
i,k,s:integer;
BEGIN
Writeln('Заполните массив: ');
For i:=1 to n do
begin
Readln(M[i]);
end;
s:=0;
For i:=1 to n do
begin
If (M[i] mod 2=0) then
begin
inc(k);
s:=s+M[i];
end;
If (s mod 2=2) and (k mod 2=0) then
Writeln('Верно.')
else Writeln('Не верно');
end;
<span>END.</span>