Жауабы: Анализ алгоритма в позиционной системе
Это официальный ключ тапсырмаға, источник — ФИПИ тапсырмаларының ашық банкі. Свой ответ можно сверить на странице тапсырма.
Бланкке: өлшем бірліктері жоқ сан немесе сөз; бөлшек бөлігін үтірмен бөліңіз.
Получив на вход натуральное число $x$, алгоритм выполняет несколько итераций: на каждой итерации увеличивает $N$ на 1, прибавляет остаток от деления $x$ на 4 к $S$, умножает $P$ на этот остаток, после чего заменяет $x$ на целую часть частного $x/4$. После завершения цикла к $S$ и $P$ прибавляется $N$. Затем алгоритм печатает сначала $S$, а потом $P$. Укажите наибольшее число $x$, при вводе которого алгоритм печатает сначала 7, а потом 3.
1x = int(input()) 2P = 1 3S = 0 4N = 0 5while x > 0: 6 N = N + 1 7 S = S + (x % 4) 8 P = P * (x % 4) 9 x = x // 4 10S = S + N 11P = P + N 12print(S) 13print(P)
Где здесь ошибаются
Забывают прибавить $N$ к значениям $S$ и $P$ после завершения цикла.
Путают остатки от деления на 4 с цифрами десятичной жазбалар числа.
Выбирают набор цифр с подходящей суммой, но не проверяют их произведение.
Записывают цифры в неправильном порядке и получают не наибольшее число.