Задача к ЕГЭ по информатике на тему «программирование – циклы, условия» №10

Ниже на трёх языках программирования записана программа, которая получает натуральное число x  , выполняет преобразования, а затем выводит два числа. Укажите наибольшее возможное значение x  , при вводе которого программа выведет 4  и 4586868  .

|------------------------|-------------------|------------------------| |P ascal                  |P ython             |C + +                   | |------------------------|-------------------|------------------------| |var x,a,b : int64;       |x =  int(input())    |int x, a = 0, b = 1;    | |begin                    |a =  0             |cin > > x;              | |  readln (x);             |b =  1             |while (x >  0) {         | |                        |                   |                        | |  a := 0;                |while x > 0 :      |  a =  a + 1;           | |  b := 1;               |  a =  a + 1       |  b =  b ∗ (x % 100);   | |  while (x > 0) do begin|  b =  b ∗ (x % 100)  x =  x ∕ 100;         | |    a := a +  1;         |  x =  x ∕∕ 100    |}                       | |                        |                   |               ′ ′      | |    b :=  b ∗ (x mod 100);|print(a, b)         |cout <<  a < <    <<  b;| |    x := x div 100;      |                   |                        | |  end;                  |                   |                        | |           ′ ′          |                   |                        | |  writeln(a,  , b);      |                   |                        | -end.------------------------------------------------------------------

for i in range(100000000, 0,- 1):
 
    x = i
 
    a = 0
 
    b = 1
 
    while x > 0:
 
        a += 1
 
        b *= (x % 100)
 
        x //= 100
 
    if a == 4 and b == 4586868:
 
        print(i)
 
        break

Ответ: 99997806
Оцените статью
Я решу все!