В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
dkniga041
dkniga041
24.12.2022 03:06 •  Информатика

ЯП - Python 3.8

Напишите программу, которая вводит четыре натуральных числа (a, b, c и d) и находит все пятизначные числа, которые при делении на a дают в остатке b , а при делении на c дают в остатке d .

[Входные данные]
Первая входная строка содержит два натуральных числа, разделённые пробелами: a и b. Вторая строка содержит натуральные числа c и d, также разделённые пробелом. Гарантируется, что 0 ≤ b ≤ a и 0 ≤ d ≤ c.

[Выходные данные]
Программа должна вывести в одну строчку через пробел все пятизначные натуральные числа, которые при делении на a дают в остатке b, а при делении на c дают в остатке d . Если таких чисел нет, программа должна вывести выбивается ло -1.

входные данные
133 125
134 111
выходные данные
19809 37631 55453 73275 91097

Мой код, который пытался сделать. С -1 не вышло, пустоту выбивает:
a, b = map(int, input().split())
c, d = map(int, input().split())
count=0

for i in range (10000,100000):
if i % a == b and i % c == d:
print(i, end = ' ')
count+=1
if count == 0:
print = ("-1")

---
ЯП - Python. ​

Показать ответ
Ответ:
МегаМозги2005
МегаМозги2005
19.01.2024 21:58
Привет! Я рад, что ты обратился ко мне с вопросом. Давай разберемся с ним пошагово.

В данной задаче нам нужно написать программу, которая найдет все пятизначные числа, удовлетворяющие условиям деления на a и c с заданными остатками b и d соответственно.

Первый шаг - ввод данных. У нас есть две строки с числами a, b и c, d, разделенные пробелами. Мы можем использовать функцию input() для ввода данных и функцию map() для преобразования строк в целые числа:

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

Next, мы можем инициализировать переменную "count" для подсчета найденных чисел, которые удовлетворяют условиям. Для начала она равна нулю:

count = 0

Затем мы можем использовать цикл for для проверки всех пятизначных чисел от 10000 до 99999. Для каждого числа в этом диапазоне мы проверим условия деления на a и c:

for i in range(10000, 100000):
if i % a == b and i % c == d:
print(i, end=' ')
count += 1

Если найдено число, которое удовлетворяет условиям, мы его выводим с помощью print(). Кроме того, мы увеличиваем счетчик count на 1.

В конце программы мы проверяем значение переменной count. Если count осталась равной нулю, это означает, что не было найдено чисел, удовлетворяющих условиям. В таком случае мы выводим "-1":

if count == 0:
print("-1")

Вот и все! Теперь программа должна работать корректно и выводить все пятизначные числа, которые удовлетворяют условиям, или "-1", если таких чисел нет.

Надеюсь, эта подробная разборка поможет тебе лучше понять задачу и разобраться с ее решением. Если у тебя возникнут еще вопросы, не стесняйся обращаться ко мне. Удачи в изучении программирования!
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота