Ниже записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 18. var x, a, b: integer; begin readln(x); a :=...

Ниже записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 3, а потом 18. var x, a, b: integer; begin readln(x); a := 0; b := 1; while x > 0 do begin a := a+1; b := b*(x mod 100); x := x div 100; end; writeln(a); write(b); end.
Гость
Ответ(ы) на вопрос:
Гость
procedure GetAB(x: integer; var a: integer; var b: integer); begin     a := 0;     b := 1;     while x > 0 do     begin         a := a + 1;         b := b * (x mod 100);         x := x div 100;     end; end; var     x, a, b: integer; begin     for x := 10000 to 2000000000 do     begin         GetAB(x, a, b);         if (a = 3) and (b = 18) then             Println(a, b, x);     end; end. выдает такие значения 3 18 10118 3 18 10209 3 18 10306 3 18 10603 3 18 10902 3 18 11801 3 18 20109 3 18 20303 3 18 20901 3 18 30106 3 18 30203 3 18 30302 3 18 30601 3 18 60103 3 18 60301 3 18 90102 3 18 90201 3 18 180101 Выделенное наибольшее
Не нашли ответ?
Ответить на вопрос
Похожие вопросы