var mas: array [1..n] of integer; i, max1, max2: integer;
begin randomize; for i := 1 to n do mas[i] := -20 + random(40); if mas[1] < mas[2] then begin max1 := mas[2]; max2 := mas[1] end else begin max1 := mas[1]; max2 := mas[2] end; for i := 3 to n do if max1 < mas[i] then begin max2 := max1; max1 := mas[i] end else if max2 < mas[i] then max2 := mas[i]; writeln(max1:3, max2:3); end.
Программа Вот: Program z1;Var a,b,c,d,k:integer;BeginWriteln('Введите трехзначное число');REadln(a);While a<>0 do beginWriteln('Введите трехзначное число');REadln(a);b:=a div 100 mod 10;c:=a div 10 mod 10;d:=a mod 10;if b+c+d div 10 >0 then writeln('Сумма цифр- двузначное число') else writeln ('Нет, сумма цифр не двузначное число');if b*C*D div 100 >0 then writeln('Произведение цифр- терхзначное число') else writeln ('Нет, произведение цифр не трехзначное число число');Writeln ('Введите любое число');Readln (k);If b*c*d>k then writeln('Произведение цифр больше числа') else writeln('Произведение меньше числа');if B+c+d div 5 =0 then writeln('Сумма цифр числа кратна 5') else writeln ('Сумма цифр не кратна 5');if B+c+d div k =0 then writeln('Сумма цифр числа кратна числу, введенному с клавиатуры') else writeln ('Сумма цифр не кратна числу, введенному с клавиатуры');End;End. Есть маленькая проблема в начале, не помню как прописывать, поэтому число первый раз нужно вводить 2 раза, если не устраевает, можете воспользоваться другими ресурсами
var
mas: array [1..n] of integer;
i, max1, max2: integer;
begin
randomize;
for i := 1 to n do
mas[i] := -20 + random(40);
if mas[1] < mas[2] then begin
max1 := mas[2];
max2 := mas[1]
end
else begin
max1 := mas[1];
max2 := mas[2]
end;
for i := 3 to n do
if max1 < mas[i] then begin
max2 := max1;
max1 := mas[i]
end
else
if max2 < mas[i] then
max2 := mas[i];
writeln(max1:3, max2:3);
end.