Укажите наибольшее из таких чисел x, при вводе которых алгоритм
Условие
| Ниже на пяти языках записан алгоритм. Получив на вход число x, этот алгоритм печатает два числа a и b. Укажите наибольшее из таких чисел x, при вводе которых алгоритм печатает сначала 2, а потом 11. Бейсик | Python |
|---|---|
| DIM X, A, B AS INTEGER INPUT X A = 0: B = 1 WHILE X > 0 A = A+1 B = B*(X MOD 1000) X = X\1000 WEND PRINT A PRINT B | x = int(input())a, b = 0, 1while x > 0: a = a+1 b = b*(x%1000) x = x//1000print(a)print(b) |
| Алгоритмический язык | Паскаль |
| алгнач цел x, a, b ввод x a := 0; b := 1 нц пока x > 0 a := a+1 b := b*mod(x, 1000) x := div(x, 1000) кц вывод a, нс, bкон | var x, a, b: integer;begin readln(x); a := 0; b := 1; while x > 0 do begin a := a+1; b := b*(x mod 1000); x := x div 1000; end; writeln(a); write(b);end. |
| Си++ | |
| #include <iostream>using namespace std;int main(){ int x, a, b; cin >> x; a = 0; b = 1; while (x > 0) { a = a+1; b = b * (x%1000); x = x/1000; } cout << a << endl << b endl; return 0;} |
Ответ
Ответ и полный разбор откроются после входа
Посмотреть ответРешение по шагам
Как рассуждать
Решение. Заметим, что так как a = 2, то Всего две итерации цикла. Так как 11 — простое число, то в одной итерации x mod 1000 должно быть равно 11, а в другой —
Осталось ещё 3 шага
Число получится больше, если 11 будет…
Приведём другое решение на языке Python. for…
x = x // 1000 if a == 2 and b == 11: print(i)…
Бесплатно · займёт минуту
Другие задачи по теме «Анализ программы с циклами и условными операторами»
Укажите наименьшее из таких чисел x, при вводе которых алгоритм11 классУкажите наименьшее из таких чисел x, при вводе которых алгоритм11 классНиже на 5-ти языках программирования записан алгоритм. Получив на вход11 классУкажите наименьшее из таких чисел x, при вводе которых алгоритм11 классНиже на четырёх языках записан алгоритм. Получив на вход число x, этот11 класс