Готово
function max(a1, a2:integer):integer;
begin
if a1>a2 then max:=a1 else max:=a2;
end;
var
a, b, c, d: integer;
begin
readln(a, b, c, d);
write(max(max(a, b), max(c, d)));
<span>end.
Если есть какие-то вопросы или ещё нужна помощь, в ЛС.
</span>
На единицу больше, чем максимальная из цифр в записи чисел. В данном случае максимальная цифра 3, следовательно, достаточно использовать систему счисления с основанием 4.
//Pascal ABC.NET v3.1 сборка 1219
Const
n=5;
Var
ar:array[1..n] of integer;
i:integer;
begin
for i:=1 to n do
readln(ar[i]);
for i:=1 to n-1 do
if ar[i]>ar[i+1] then
begin
writeln('Убывает на одном из участков');
exit;
end;
writeln('Возрастает');
end.
1
Посмотрите на данное вам число и определите количество его цифр.
Пример: напишите 5827 в развернутом виде.
Прочитайте число вслух: пять тысяч восемьсот двадцать семь.
Обратите внимание, что в этом числе есть четыре цифры. В результате развернутая форма будет содержать четыре слагаемых.
2
Перепишите число в виде суммы его цифр, оставив между ними некоторое расстояние, чтобы умножить каждую цифру на некоторую цифру (об этом далее).
Пример: 5827 перепишите так:
5 + 8 + 2 + 7
3
Цифры числа расположены в определенных позициях, которые соответствуют (справа налево) единицам, десяткам, сотням, тысячам и так далее. Определите название позиции и ее значение для каждой цифры (справа налево).
Пример: так как в данном числе четыре цифры, то вам нужно определить названия четырех позиций (справа налево).
7 соответствует единицам (значение = 1).
2 соответствует десяткам (значение = 10).
8 соответствует сотням (значение = 100).
5 соответствует тысячам (значение = 1000).
4
Умножьте каждую цифру данного числа на значение соответствующей ей позиции.
Пример: [5 * 1000] + [8 * 100] + [2 * 10] + [7 * 1]
5
Запишите окончательный ответ, так как сумма произведений является развернутой формой исходного числа.
Пример: развернутая форма 5827:
5000 + 800 + 20 + 1