Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Центр помощи
  • » Написать программу, которая может угадать загаданное игроком число. Диапазон чисел - [0, 1000] [RSS Feed]

#1 Ноя. 10, 2016 13:19:13

Criterion
Зарегистрирован: 2016-11-10
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Написать программу, которая может угадать загаданное игроком число. Диапазон чисел - [0, 1000]

Здравствуйте. Только начал изучать Python.
Столкнулся с задачей.
Написать программу, которая может угадать загаданное игроком число. Диапазон чисел - 0, 1000
Не могу понять почему не начинает выполняться второй цикл.
Не поможете?

 y = 500
x1 = 0
x2 = 'yes'
#x = int(input('What is a secret number? '))
x1 = input('Ваше число 500?')
if x1 == 'yes':
    print ('Ура')
elif x1 == 'no':
    while x2=='yes':
        x2 = input('Ваше число больше?')
        if x2 == 'yes':
            y = y + 100
            print(y)
            x3 = input('Ваше число?')
            if x3 == 'yes':
                print('Ваше загаданное число', y)
        if x2 =='no':
            while x2 == 'yes':
                x2 = input('Ваше число меньше?')
                if x2 == 'yes':
                    y = y - 10
                    print(y)
                    x3 = input('Ваше число?')
                    if x3 == 'yes':
                        print('Ваше загаданное число', y)

И скажите логично ли я ее решаю или есть другие способы (с наименьшим колличество вопросов программы). Спасибо

Отредактировано Criterion (Ноя. 10, 2016 13:21:13)

Офлайн

#2 Ноя. 10, 2016 13:53:08

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Написать программу, которая может угадать загаданное игроком число. Диапазон чисел - [0, 1000]

не логично. Эта задача решается с помощью 1 цикла и бинарного поиска.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Ноя. 10, 2016 14:39:51

Criterion
Зарегистрирован: 2016-11-10
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Написать программу, которая может угадать загаданное игроком число. Диапазон чисел - [0, 1000]

JOHN_16
не логично. Эта задача решается с помощью 1 цикла и бинарного поиска.

хорошо. Я этого пока не знаю. Решаю при помощи if и while.
Так не подскажете почему второй цикл не запускается?

Офлайн

#4 Ноя. 10, 2016 16:01:19

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Написать программу, которая может угадать загаданное игроком число. Диапазон чисел - [0, 1000]

Criterion
хорошо. Я этого пока не знаю. Решаю при помощи if и while.
Так не подскажете почему второй цикл не запускается?
а Вас этот кусочек кода ни на какие мысли не наводит?
         if x2 =='no':
            while x2 == 'yes':



Отредактировано izekia (Ноя. 10, 2016 16:02:15)

Офлайн

#5 Ноя. 10, 2016 16:18:32

izekia
От:
Зарегистрирован: 2008-07-19
Сообщения: 317
Репутация: +  12  -
Профиль   Отправить e-mail  

Написать программу, которая может угадать загаданное игроком число. Диапазон чисел - [0, 1000]

самый честный способ безо всяких там больше-меньше:

 while input('Ваше число %s? ' % randint(0, 1000)) not in ['y', 'ye', 'yes', 'yep', 'да', 'si']: pass



Отредактировано izekia (Ноя. 10, 2016 16:18:55)

Офлайн

  • Начало
  • » Центр помощи
  • » Написать программу, которая может угадать загаданное игроком число. Диапазон чисел - [0, 1000][RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version