Найти в Дзене
Практика Python

Задача: "Проверка делимости одного числа на другое число"

Условие: Найти все такие трёхзначные числа которые кратны 7, причём сумма всех цифр этого числа также должно быть кратно семи. Вывести их количество. Разобьём задачу на несколько подзадач. Проверка делимости трёхзначных чисел на 7. Это самая простая подзадача. Здесь с помощью цикла и функции range() нужно перебрать все трёхзначные числа, проверяя - равен ли остаток от деления текущего числа на 7 нулю. Если да, то заносим это число в список num_7. получаем вот такущий список: Считаем суммы цифр всех чисел списка num_7. Будем брать каждое число, приводить к его к строке. Затем брать каждый элемент этой строки - приводить к числу и суммировать три получившихся числа. Для этого введем счетчик sum_digit Значения заносим в список current_list: Теперь на выходе у нас два списка. num_7 с числами, кратными семи, другой с суммами их цифр. Индексы чисел и суммы их цифр совпадают! Получение ответа Перебираем в цикле current_list и ищем числа, которые кратны семи. Если число найдено, то соо

Условие:

Найти все такие трёхзначные числа которые кратны 7, причём сумма всех цифр этого числа также должно быть кратно семи. Вывести их количество.

Разобьём задачу на несколько подзадач.

Проверка делимости трёхзначных чисел на 7.

Это самая простая подзадача. Здесь с помощью цикла и функции range() нужно перебрать все трёхзначные числа, проверяя - равен ли остаток от деления текущего числа на 7 нулю. Если да, то заносим это число в список num_7.

код - проверка деления на 7
код - проверка деления на 7

получаем вот такущий список:

вывод проверки деления на 7
вывод проверки деления на 7

Считаем суммы цифр всех чисел списка num_7.

Будем брать каждое число, приводить к его к строке. Затем брать каждый элемент этой строки - приводить к числу и суммировать три получившихся числа. Для этого введем счетчик sum_digit

Значения заносим в список current_list:

считаем суммы цифр списка  num_7
считаем суммы цифр списка num_7

Теперь на выходе у нас два списка. num_7 с числами, кратными семи, другой с суммами их цифр. Индексы чисел и суммы их цифр совпадают!

два списка на выходе
два списка на выходе

Получение ответа

Перебираем в цикле current_list и ищем числа, которые кратны семи. Если число найдено, то соответствующий элемент списка num_7 нужно занести в итоговый список itog_list.

В результате выводим на экран длину списка itog_list

итоговая часть кода программы
итоговая часть кода программы

получаем

ответ
ответ

Для закрепления:

1. Создать функции, чтобы каждая подзадача выполнялась в каждой функции

2. Произвести рефакторинг, сократив код в 2 раза. Для этого можно две подзадачи объединить в одну

Читайте другие наши статьи!

-7