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

Как остановить код в python, когда он выполнил условие?

задача на счастливые билеты, пользователь вводит кол-во билетов которое ему нужно, но мой код без остановки генерирует все счастливые билеты, мне нужно что бы он остановился после того как число билетов которое ввёл пользователь будет равно количеству созданных кодом
int(input('Введите количество счастливых билетов'))
for d1 in range(10):
    for d2 in range(10):
        for d3 in range(10):
            min_d4 = max(0, d1 + d2 + d3 - 18)
            max_d4 = min(9, d1 + d2 + d3)
            for d4 in range(min_d4, max_d4 + 1):
                min_d5 = max(0, d1 + d2 + d3 - d4 - 9)
                max_d5 = min(9, d1 + d2 + d3 - d4)
                for d5 in range(min_d5, max_d5 + 1):
                    d6 = d1 + d2 + d3 - d4 - d5
                    if 0 <= d6 <= 9:
                        print(f'{d1}{d2}{d3}{d4}{d5}{d6}')
  • Вопрос задан
  • 155 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
twobomb
@twobomb
def gen(c):
    for d1 in range(10):
        for d2 in range(10):
            for d3 in range(10):
                min_d4 = max(0, d1 + d2 + d3 - 18)
                max_d4 = min(9, d1 + d2 + d3)
                for d4 in range(min_d4, max_d4 + 1):
                    min_d5 = max(0, d1 + d2 + d3 - d4 - 9)
                    max_d5 = min(9, d1 + d2 + d3 - d4)
                    for d5 in range(min_d5, max_d5 + 1):
                        d6 = d1 + d2 + d3 - d4 - d5
                        if 0 <= d6 <= 9:
                            print(f'{d1}{d2}{d3}{d4}{d5}{d6}')
                        c-=1
                        if c <= 0 :
                            return

cnt = int(input('Введите количество счастливых билетов'))

gen(cnt)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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