Ниже на четырёх языках программирования записан алгоритм. Получив на вход натуральное десятичное число n, этот алгоритм печатает число k. Известно, что число n не превышает 10000. Укажите число n (не превышающее 10000), при вводе которого алгоритм печатает число 1. Если таких чисел несколько, укажите наибольшее.
C++ |
Python |
#include <iostream>
using namespace std;
int main() {
int n, k;
cin >> n;
k = 0;
while (n > 1) {
k = k + 1;
if (n % 4 == 0) {
n = n / 4;
}
}
if (k < 4)
cout << k << endl;
else
cout << k % 4 << endl;
return 0;
} |
n = int(input())
k = 0
while n > 1:
k = k + 1
if n % 4 == 0:
n = n // 4
if k < 4:
print(k)
else:
print(k % 4)
|
Алгоритмический язык |
Паскаль |
алг
нач
цел n, k
ввод n
k := 0
нц пока n > 1
k := k + 1
если mod(n, 4) = 0 то
n := div(n, 4)
все
кц
если k < 4 то
вывод k
иначе
вывод mod(k, 4)
кон |
var n, k: integer;
begin
readln(n);
k := 0;
while n > 1 do
begin
k := k + 1;
if n mod 4 = 0 then
n := n div 4;
end;
if k < 4 then
write(k)
else
write(k % 4)
end. |