1)немного не понял фразу "меньше данного числа 2". если найти сумму всех элементов, которые меньше двух в массиве размером 20 элементов, то это var s,i: longint; m: array[1..100] of integer; begin for i: =1 to 20 do read(m[i]); s: =0; for i: =1 to 20 do if m[i]< 2 then s: =s+m[i]; writeln(s); end. 2) var i: longint; m: array[1..100] of integer; begin for i: =1 to 20 do read(m[i]); for i: =1 to 20 do if (m[i] mod 5=3) then writeln(m[i]); end. 3) var a,b,i: longint; m: array[1..100] of real; begin read(a); read(b); for i: =1 to 20 do read(m[i]); for i: =1 to 20 do if (m[i]> =a) and (m[i]< =b) then writeln(i); end. 4)var o,s,i: longint; m: array[1..100] of integer; begin for i: =1 to 20 do begin read(m[i]); s: =s+m[i]; end; o: =s div 20; for i: =1 to 20 do if m[i]> o then writeln(m[i]); end. прошу прощения, если есть ошибки в синтаксисе. нет возможности проверить в компиляторе
kas80
10.05.2023
Срегионального этапа прошлого года) на паскале решение выглядит так: var s,a1,a2,a3,a4: int64; i,o: text; function min(x,y: int64): int64; begin if x> y then min: =y else min: =x; end; begin assign(i,'pobeda.in'); reset(i); read(i,a1,a2,a3,a4); close(i); s: =min(a1,a2)+min(a3,a4); assign(o,'pobeda.out'); rewrite(o); writeln(o,trunc(sqrt(; close(o); end. если ты пишешь на другом языке программирования, то могу коротко рассказать суть решения. большой квадрат со стороной x получается из x^2 маленьких квадратом, которые состоят из двух прямоугольных треугольников. такие квадраты можно составить из треугольников a1 и a2 или a3 и a4. поэтому берём минимальное значение из a1 и a2 и минимальное из a3 и a4. суммируем эти значения, берём корень и округляем в меньшую степень.
var
data: array[1..5] of integer;
i, t: byte;
begin
t : = 0;
for i : =1 to n do
readln(data[i]);
for i : =1 to n do
if t < data[i] then
begin t : = data[i]; end;
end;
writeln("наибольшее: ", t);
end.