Вопрос задан 23.09.2026 в 12:03. Предмет Информатика. Спрашивает Намсараева Аяна.

Надо написать на Python, используя циклы:

Вложенные циклы

Уровень A. В магазине продается мастика в ящиках по 15 кг, 17 кг, 21 кг. Как купить ровно 185 кг мастики, не вскрывая ящики? Сколькими способами можно это сделать?

Уровень B. Ввести натуральное число N и вывести все натуральные числа, не превосходящие N и делящиеся на каждую из своих цифр.

Пример:
Введите N:
15
1 2 3 4 5 6 7 8 9 11 12 15

Уровень C. Напишите программу, которая получает натуральные числа A и B (A
Пример:
Введите границы диапазона:
10 20
11 13 17 19

Уровень D. Напишите программу, которая получает натуральные числа A и B (A
Пример:
Введите границы диапазона:
10 20
10 14 15

Перейти к ответам

Ответы на вопрос

Отвечает Доронина Виолетта.

Python
# Уровень A
# В магазине есть ящики по 15, 17 и 21 кг.
# Нужно найти все варианты, при которых сумма равна 185 кг.

count = 0

for a in range(186 // 15 + 1): for b in range(186 // 17 + 1): for c in range(186 // 21 + 1): if a * 15 + b * 17 + c * 21 == 185: count += 1 print("15 кг:", a, "ящиков;", "17 кг:", b, "ящиков;", "21 кг:", c, "ящиков")

print("Количество способов:", count)

Результат работы программы покажет все возможные покупки и количество способов.

Python
# Уровень B
# Вывод чисел, которые делятся на каждую свою цифру

N = int(input("Введите N: "))

for i in range(1, N + 1): number = i good = True

while number > 0: digit = number % 10

if digit == 0 or i % digit != 0: good = False break

number //= 10

if good: print(i, end=" ")

Программа перебирает все числа от 1 до N. Для каждого числа через цикл получает его цифры и проверяет, делится ли число на каждую из них.

Python
# Уровень C
# Получение чисел A и B и вывод чисел в заданном диапазоне,
# которые делятся на каждую свою цифру

A = int(input("Введите A: ")) B = int(input("Введите B: "))

for i in range(A, B + 1): number = i good = True

while number > 0: digit = number % 10

if digit == 0 or i % digit != 0: good = False break

number //= 10

if good: print(i, end=" ")

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

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос