Вопрос задан 19.06.2023 в 17:48. Предмет Информатика. Спрашивает Аверин Лев.

СРОЧНО!!!!!!! ПОМОГИТЕ С ЗАДАНИЯМИ Надо написать на Python, используя циклы:Вложенные

циклыУровень A. В магазине продается мастика в ящиках по 15 кг, 17 кг, 21 кг. Как купить ровно 185 кг мастики, не вскрывая ящики? Сколькими способами можно это сделать?Уровень B. Ввести натуральное число N и вывести все натуральные числа, не превосходящие N и делящиеся на каждую из своих цифр. Пример:Введите N:151 2 3 4 5 6 7 8 9 11 12 15Уровень C. Напишите программу, которая получает натуральные числа A и B (A<B) и выводит все простые числа на отрезке [A; B].Пример:Введите границы диапазона:10 2011 13 17 19Уровень D. Напишите программу, которая получает натуральные числа A и B (A<B) и выводит все на отрезке [A; B], у которых ровно 4 разных делителя. Пример:Введите границы диапазона:10 2010 14 15​
0 0
Перейти к ответам

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

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Кусайн Биржан.

A level (алгоритм долгий по времени)

a, b, c, n = map(int, input().split())

shopping_options = []

for ka in range((n // a)+1):

   if ka * a > n:

       break

   elif ka * a == n:

       shopping_options.append([ka, 0, 0])

       break

   for kb in range((n // b)+1):

       if ka * a + kb * b > n:

           break

       elif ka * a + kb * b == n:

           shopping_options.append([ka, kb, 0])

           break

       for kc in range((n // c)+1):

           if ka*a+kb*b+kc*c == n:

               shopping_options.append([ka, kb, kc])

           elif ka*a+kb*b+kc*c > n:

               break

 

print(len(shopping_options))

for index in range(len(shopping_options)):

   print(*shopping_options[index])

B level:

def divisiblity(a: int) -> bool:

   for number in str(a):

       try:

           a % int(number)

       except ZeroDivisionError:

           return False

       if a % int(number) == 0:

           pass

       else:

           return False

   return True

n = int(input())

sequence = []

for i in range(1, n+1):

   if divisiblity(i):

       sequence.append(i)

print(*sequence)

C level:

def is_Prime(a: int) -> bool:

   for i in range(2, (a//2)+1):

       if a % i == 0:

           return False

   return True

start, end = map(int, input().split())

seq_of_simp_numb = []

for g in range(start, end+1):

   if is_Prime(g):

       seq_of_simp_numb.append(g)

print(*seq_of_simp_numb)

D level:

def four_divisors(a: int) -> bool:

   divisors = 0

   for i in range(1, a//2+1):

       if a % i == 0:

           divisors += 1

           if divisors > 4:

               return False

   divisors += 1

   return divisors == 4

start, end = map(int, input().split())

sequence = []

for g in range(start, end+1):

   if four_divisors(g):

       sequence.append(g)

print(*sequence)

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Уровень A: Как купить ровно 185 кг мастики, не вскрывая ящики?

Для решения этой задачи можно использовать вложенные циклы. Мы знаем, что мастика продается в ящиках по 15 кг, 17 кг и 21 кг. Нам нужно купить ровно 185 кг мастики.

Один из способов решения этой задачи - перебрать все возможные комбинации ящиков и проверить их сумму. Если сумма равна 185 кг, то это один из возможных способов покупки мастики.

Вот пример кода на Python, который решает эту задачу:

```python for box_15 in range(0, 13): # перебираем количество ящиков по 15 кг от 0 до 12 for box_17 in range(0, 11): # перебираем количество ящиков по 17 кг от 0 до 10 for box_21 in range(0, 9): # перебираем количество ящиков по 21 кг от 0 до 8 total_weight = box_15 * 15 + box_17 * 17 + box_21 * 21 # считаем общий вес if total_weight == 185: # если общий вес равен 185 кг print(f"Ящики по 15 кг: {box_15}, Ящики по 17 кг: {box_17}, Ящики по 21 кг: {box_21}") ```

Этот код перебирает все возможные комбинации количества ящиков по 15 кг, 17 кг и 21 кг. Если общий вес ящиков равен 185 кг, то выводит комбинацию ящиков.

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

0 0

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

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

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

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