Guest User

Untitled

a guest
Dec 2nd, 2015
174
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 5.02 KB | None | 0 0
  1. # Guess the word
  2.  
  3. # Компьютер выбирает какое-либо слово, а игрок должен его отгадать. Компьютер сообщает игроку, сколько букв в слове,
  4. # и даёт 5 попыток узнать, если ли какая-либо буква в слове, причем программа может отвечать только "Да" и "Нет". Вслед
  5. # за тем игрок должен попробовать отгадать слово
  6.  
  7. import random
  8.  
  9. # Создание кортежа, который содержит список слов.
  10. WORDS = ("python", "programming", "funny", "douson")
  11.  
  12. # Выбор случайного слова из кортежа.
  13. word = random.choice(WORDS)
  14. # Копирование в переменную выбранного случайным образом слова.
  15. correct = word
  16.  
  17. # Приветствие игрока.
  18. print("""
  19. ========================================================================================================================
  20.                                        Добро пожаловать в игру "Угадай слово"!
  21.    Компьютер загадывает слово и Вам нужно его угадать. У Вас есть 5 попыток узнать, есть ли какая-то буква в слове,
  22.                                после чего нужно попытаться угадать слово. Удачи!
  23. ========================================================================================================================
  24. """
  25. )
  26.  
  27. print("Загаданное слово содержит {} букв.".format(len(correct)))
  28.  
  29. # Создание счетчика, который считает кол-во попыток. По умолчанию = 1.
  30. counter = 1
  31.  
  32. # Получение пользовательского ввода
  33. # Бесконечный цикл, который включает в себя условие - пока счетчик будет меньше или равен 5 выводить на экран
  34. # предложение пользовательского ввода. Если то, что ввёл пользователь - буква и длина равна 1 символ, то происходит
  35. # проверка наличия введенной буквы в самом слове, при этом число попыток увеличивается на 1. Если буквы нет в слове,
  36. # выводится сообщение о том, что такой буквы в слове нет. Если пользователь вводит символы, которые не относятся к
  37. # буквам, то выводится сооответствующее сообщение и цикл продолжается. Если счетчик становится больше, чем 5 (количество
  38. # попыток, то цикл прерывается и пользователю предлагается ввести слово.
  39. while True:
  40.     if counter <= 5:
  41.         letter = input("\nВведите букву: ")
  42.         if letter.isalpha() and len(letter) == 1:
  43.             if letter in correct:
  44.                 print("Да, такая буква есть в слове.")
  45.                 counter += 1
  46.             else:
  47.                 print("Нет, такой буквы нет в слове.")
  48.                 counter += 1
  49.         else:
  50.             print("Возможно, Вы ввели не букву.")
  51.             # continue
  52.     else:
  53.         counter = 1
  54.         break
  55.  
  56. # Предлагается ввести слово. Если счетчик меньше 5, то пользователю предлагается ввести слово. Если слово совпадает
  57. # с загаданным, пользователю выводится сообщение о выиграше. Если пользователь ввёл не строчное значение, а цифры или
  58. # символы, то ему выводится сообщение с ошибкой. Если пользователь ввёл слово, которое не совпадает с загаданным, то ему
  59. # выводится соответствующее сообщение с количеством попыток.
  60. while True:
  61.     if counter <= 5:
  62.         guess = input("\nТеперь постарайтесь угадать слово: ")
  63.         if guess == correct:
  64.             print("Вы угадали слово!")
  65.             break
  66.         elif not guess.isalpha():
  67.             print("Возможно, Вы не ввели слово.")
  68.         else:
  69.             counter += 1
  70.             print("Попробуйте еще раз. Количество оставшихся попыток: {}".format(6 - counter))
  71.     else:
  72.         print("Вы проиграли.")
  73.         break
  74.  
  75. input("\n\nНажмите Enter для выхода.")
Advertisement
Add Comment
Please, Sign In to add comment