Ниже на четырёх языках программирования записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа: a и b.
Укажите наибольшее трёхзначное число x, при котором после выполнения алгоритма будет напечатано сначала 2, а потом ещё раз 2.
Бейсик |
Python |
DIM X, Y, A, B AS INTEGER A = 0 B = 0 INPUT X WHILE X > 0 Y = X MOD 10 IF Y > 2 THEN A = A + 1 IF Y < 7 THEN B = B + 1 X = X \ 10 WEND PRINT A PRINT B |
a = 0 b = 0 x = int(input()) while x > 0: y = x % 10 if y > 2: a = a + 1 if y < 7: b = b + 1 x = x // 10 print(a) print(b) |
Алгоритмический язык |
Паскаль |
алг нач цел x, y, a, b a := 0 b := 0 ввод x нц пока x > 0 y := mod(x, 10) если y > 2 то a := a + 1 все если y < 7 то b := b + 1 все x := div(x, 10) кц вывод a, нс, b кон |
var x, y, a, b: integer; begin a := 0; b := 0; readln(x); while x > 0 do begin y := x mod 10; if y > 2 then a := a + 1; if y < 7 then b := b + 1; x := x div 10 end; writeln(a); writeln(b) end. |
Си |
#include int main() { int x, y, a, b; a = 0; b = 0; scanf("%d", &x); while (x > 0) { y = x % 10; if (y > 2) a = a + 1; if (y < 7) b = b + 1; x = x / 10; } printf("%d\n%d\n", a, b); } |