Информатика!
ниже записана программа. получив на вход число x , эта программа печатает два числа, l и m. укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 7.
var x, l, m: integer;
begin
readln(x);
l : = 0;
m : = 0;
while x > 0 do
begin
l : = l + 1;
if m < x then begin
m : = x mod 10;
end;
x : = x div 10;
end;
writeln(l); writeln(m);
end.
Шестнадцатеричные цифры: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A (10), B (11), C (12), D (13), E (14), F(15).
– По условию цифры не превосходят 6, тогда поразрядные суммы не превосходят 6 + 6 = C. Отвергаем вариант 1: в нем появилось F.
– Поразрядные суммы, как следует из предыдущего наблюдения, записываются одной цифрой. Поэтому не подходит вариант 2, в котором 3 цифры.
– Цифры в результате должны идти в порядке возрастания, чего нет в варианте 4, 7 > 6.
Остаётся единственный вариант: 3) 8B. Он получится, например, если исходные числа равны 35 и 56