Ответы

Помогите плиз почему у меня не выводится с 19 до 26 строчку кода (на Python) код снизу

1234567891011121314151617181920212223242526
print("В ИГРЕ ВРЕММЕНО НЕТ СОХРАНЕНИЙ!!!!!!")
import random
ishascar = True
print('==========================================================================')
print('=============================              ===============================')
print("=====================       ИГРА -УГАДАЙ ЧИСЛО-      =====================")
print('=============================              ===============================')
print('==========================================================================')
i = input('напиши слово -начать- чтобы запустить игру или напиши цифру уровня чтобы на него попасть либо напиши выход чтобы выйти ')
while ishascar:
    h = random.randrange(1, 10)
    if i == "начать":
        g = int(input("введите число от 1 до 10 ")) 
    if g == h:
        ishascar = False
        if ishascar == False:
            print ('ты угодал(а)')
o = input("перейти на следующий уровень? ")
while ishascar:
    d = random.randrange(1, 100)
    if o == "да":
        a = int(input("введите число от 1 до 100 "))
    if a == h:
        ishascar = False
    if ishascar == False:
        print ('ты угадал(а)')
По дате
По рейтингу
Аватар пользователя
Ученик
1мес
Изменено

Строка 23: Замени if a == h: на if a == d: Строка 26: Добавь else: print("Не угадал, попробуй еще раз!")

Строка после 18: Перенеси ishascar = True перед вторым циклом while

Аватар пользователя
Новичок
1мес

на исправленый код:

import random

print("В ИГРЕ ВРЕМЕННО НЕТ СОХРАНЕНИЙ!!!!!!")

print('==========================================================================')

print('============================= ===============================')

print("===================== ИГРА -УГАДАЙ ЧИСЛО- =====================")

print('============================= ===============================')

print('==========================================================================')

# Основной цикл игры

while True:

i = input('Напиши слово "начать", чтобы запустить игру, '

'или напиши "выход", чтобы выйти: ').lower()

if i == "выход":

print("Спасибо за игру! До свидания!")

break

elif i != "начать":

print("Некорректный ввод. Пожалуйста, введите 'начать' или 'выход'.")

continue

# Уровень 1: числа от 1 до 10

print("\nУровень 1: Угадай число от 1 до 10")

secret_number = random.randrange(1, 11) # randrange(1,10) даёт числа до 9

guess = int(input("Введите число от 1 до 10: "))

if guess == secret_number:

print('Ты угадал(а)! Переходим на следующий уровень.')

# Уровень 2: числа от 1 до 100

print("\nУровень 2: Угадай число от 1 до 100")

secret_number = random.randrange(1, 101)

guess = int(input("Введите число от 1 до 100: "))

if guess == secret_number:

print('Ты угадал(а)! Поздравляем с победой!')

else:

print(f'Не угадал(а). Загаданное число было {secret_number}.')

else:

print(f'Не угадал(а). Загаданное число было {secret_number}.')

# Предложение сыграть ещё раз

play_again = input("Хочешь сыграть ещё раз? (да/нет): ").lower()

if play_again != "да":

print("Спасибо за игру! До свидания!")

break

Аватар пользователя
Мастер
1мес

Потому что после предыдущего цикла переменная в условии равна 0.

Аватар пользователя
Ученик
1мес

Переменная ishascar становится False на 16 строке для выхода из первого цикла. Второй цикл на 20 строке видит этот False и поэтому никогда не запускается.