1. Современный вариант (коротко, быстро и наглядно, кто знает). Так уже начали учить в некоторых школах.
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017 // Внимание! Если программа не работает, обновите версию!
begin var s:=ArrRandom(ReadInteger('n='),1,300).Println. Where(k->(k>=100) and ((k mod 100) div 10=0)); if s.Count>0 then Writeln(s.Max) else Writeln('Нет элементов') end.
2. А так по-прежнему учат в большинстве школ. Стиль "80-х годов века". Долго, длинно, можно наделать ошибок, но по-другому эти учителя сами не могут.
const nn=100; var i,n,max:integer; a:array[1..nn] of integer; begin Write('n='); Read(n); Randomize; max:=0; for i:=1 to n do begin a[i]:=Random(300)+1; Write(a[i],' '); if (a[i]>=100) and ((a[i] mod 100) div 10=0) then if a[i]>max then max:=a[i] end; Writeln; if max>0 then Writeln(max) else Writeln('Нет элементов') end.
Begin var max := 0; var n := readinteger('Введите n: '); write('Введите n чисел: '); for var i := 1 to n do begin var a := readinteger(); if(a.ToString.Length > 1) then if(a.ToString[a.ToString.Length - 1] = '0') then if(a > max) then max := a; end; if(max = 0) then write('Нет таких чисел.') else write(max); end.
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!
begin
var s:=ArrRandom(ReadInteger('n='),1,300).Println.
Where(k->(k>=100) and ((k mod 100) div 10=0));
if s.Count>0 then Writeln(s.Max) else Writeln('Нет элементов')
end.
Пример
n= 15
76 283 171 140 113 65 185 35 202 42 93 51 205 76 138
205
2. А так по-прежнему учат в большинстве школ. Стиль "80-х годов века". Долго, длинно, можно наделать ошибок, но по-другому эти учителя сами не могут.
const
nn=100;
var
i,n,max:integer;
a:array[1..nn] of integer;
begin
Write('n=');
Read(n);
Randomize;
max:=0;
for i:=1 to n do begin
a[i]:=Random(300)+1;
Write(a[i],' ');
if (a[i]>=100) and ((a[i] mod 100) div 10=0) then
if a[i]>max then max:=a[i]
end;
Writeln;
if max>0 then Writeln(max)
else Writeln('Нет элементов')
end.
Пример
n=15
219 68 131 115 104 169 80 288 143 108 124 214 50 101 1
108
var max := 0;
var n := readinteger('Введите n: ');
write('Введите n чисел: ');
for var i := 1 to n do
begin
var a := readinteger();
if(a.ToString.Length > 1) then
if(a.ToString[a.ToString.Length - 1] = '0') then
if(a > max) then max := a;
end;
if(max = 0) then write('Нет таких чисел.')
else write(max);
end.