Тут же цикл, он повторяет дейтсвия...
Посчитай сам, каждый проход даёт +2 к S.
Program n1;
Uses CRT;
Var a,b: integer;
begin
Writeln('Vvedite chisla');
Readln(a,b);
If a>b then writeln(2*a*b,' ',a+b/2:2:2)
else if a=b then writeln('ravny!')
else writeln(a+b/2:2:2,' ',2*a*b);
readln
end.
Program znanija;
const n = 5;
var
a:array[1..n] of integer;
premax, premaxi, maxi, max, i, b:integer;
begin
max := -1000;
write('Введите массив из ', n, ' элементов:');
for i := 1 to n do
begin
read(b);
a[i] := b;
if b > max then
begin
premax := max;
premaxi := maxi;
max := b;
maxi := i;
end;
end;
writeln('Максимальный элемент №1: ', max, ',его номер ', maxi);
writeln('Максимальный элемент №2: ', premax, ',его номер ', premaxi);
end.
<em>// PascalABC.NET 3.2, сборка 1427 от 24.04.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
function Pow(x,y:BigInteger):BigInteger;
begin
Result:=x;
for var i:=int64(2) to int64(y) do Result*=x
end;
begin
var x,y:integer;
Write('Введите натуральные х и у: '); Read(x,y);
if (x<=0) or (y<=0) then begin
Writeln('Неверный ввод'); Exit
end;
if x=1 then Writeln('Результат: ',y+1)
else begin
var x1:=Range(2,x).Aggregate(BigInteger(1),(a,b)->a*b);
Writeln('Результат ',Pow(x,y)+Pow(y,x1))
end
end.
<u>Пример</u>
Введите натуральные х и у: 5 8
Результат 2348542582773833227889480596789337027375682548908319870707290971532209025114608443463698998384768703032325601