Top.Mail.Ru
Ответы

22 задание егэ информатика. Не работает код.

Var x,a,b,d,i: longint;
begin
for i:=1 to 1000 do begin
x:=i;
a:=0;
b:=0;
while x>0 do begin
d:=x mod 7;
if d mod 2 =0 then
a:=a+1
else
b:=b+1;
x:=x div 7;
if (a=3) and (b=4) then
writeln(i);
end;
end;
end.
Помогите исправить ошибку.
Вот изначальное задание:

По дате
По Рейтингу
Аватар пользователя
Новичок

По-моему тоже надо просто посмотреть, что делает эта программа. Она печатает количества чётных и нечётных цифр натурального числа х в семеричной системе счисления. Самым большим таким числом, у которого a=3 и b=4 должно быть 6665555. Но можно в этом и убедиться через перебор. Программа внизу как раз находит такое максимальное число и печатает его в семеричной системе счисления задом наперёд:

Аватар пользователя
Высший разум

А с чего решили, что искомое число меньше 10^3?
Сомневаюсь, что для решения данной задачи требуется написать какой-то код. Здесь надо найти число аналитически
Вот здесь разбор https://code-enjoy.ru/ege_po_informatike_2021_zadanie_22_analiziruem_programmu/

Аватар пользователя
Мыслитель

вам в этом задании код уже дан, надо подумать что он делает и дать ответ, какое максимальное X можно в написанный в задание код ввести, чтобы переменная a до выхода из цикла нарастилась 3 раза, а переменная b 4 раза.