Добавить в корзинуПозвонить
Найти в Дзене

Усложненный вопрос в №14 с досрока

Условие: Значение арифметического выражения 2 ∙ 2187^567 + 729^566 – 2 ∙ 243^565 + 81^564 – 2 ∙ 27^563 – 6561 записали в системе счисления с основанием 27. Определите в 27-ричной записи числа количество цифр с чётным числовым значением, превышающим 9. Я дал всем ученикам досрок в качестве пробного, и некоторые срезались из-за одной несчастной строки в коде этой №14 😭 Причем проблема не с переводом, а именно с проверкой цифры! Как уничтожаем вопрос? 1⃣ НЕ используем алгоритм, который при переводе записывает цифры числа в строку. Вообще никогда не даю его для 14 задания, он ломает логику, когда основание больше 10. Гораздо удобнее и безопаснее в том же алгоритме с циклом while сразу подсчитывать количество нужных цифр, без сохранения записи в строку. Пример (подсчет цифр 4 в пятеричной системе, база): a = ... # выражение cnt = 0 while a > 0: if a % 5 == 4: cnt += 1 a = a // 5 print(cnt) Строка if a % 5 == 4: проверяет, что последняя цифра пятеричной записи - это 4, чтобы подсчитыват

Усложненный вопрос в №14 с досрока

Условие:

Значение арифметического выражения 2 ∙ 2187^567 + 729^566 – 2 ∙ 243^565 + 81^564 – 2 ∙ 27^563 – 6561 записали в системе счисления с основанием 27. Определите в 27-ричной записи числа количество цифр с чётным числовым значением, превышающим 9.

Я дал всем ученикам досрок в качестве пробного, и некоторые срезались из-за одной несчастной строки в коде этой №14 😭 Причем проблема не с переводом, а именно с проверкой цифры! Как уничтожаем вопрос?

1⃣ НЕ используем алгоритм, который при переводе записывает цифры числа в строку. Вообще никогда не даю его для 14 задания, он ломает логику, когда основание больше 10. Гораздо удобнее и безопаснее в том же алгоритме с циклом while сразу подсчитывать количество нужных цифр, без сохранения записи в строку.

Пример (подсчет цифр 4 в пятеричной системе, база):

a = ... # выражение

cnt = 0

while a > 0:

if a % 5 == 4:

cnt += 1

a = a // 5

print(cnt)

Строка if a % 5 == 4: проверяет, что последняя цифра пятеричной записи - это 4, чтобы подсчитывать их количество, это ключ к такому типу 14-х.

2⃣ Разбираем задачи с разными условиями на цифры и заостряем внимание учеников именно на их проверке.

Например:

➖ if a % 36 > 9: - последняя цифра в 36-ричной больше 9

➖ if (a % 64) % 2 == 0: - последняя цифра в 64-ричной четна

➖ if a % 27 > 9 and (a % 27) % 2 == 0: - последняя цифра 27-ричной больше 9 и четна (досрок)

3⃣ Закрепляем понимание лайт-повышкой, где, например, надо считать не количество определенных цифр, а их сумму, или другие аналогичные вопросы.

Так что буквально 15 мин поработать, и проблем тут больше никогда не возникнет! Ставьте 🔥, если понравился "чек-лист") И пишите в комментах, с чем еще после досрока есть трудности у ваших учеников - соберу такой же разбор!

А про новые №27 писал тут (тык), с ними ситуация еще интереснее!

#информатика