Михаил Бурцев
Мастер
(1971)
1 месяц назад
Для реализации игры «Анаграммы» нам потребуется создать базу данных слов, разделить их по категориям, перемешивать буквы в словах и проверять ответы игрока. Вот пример программы на Python:
import random
# База данных слов
words = {
'биология': ['клетка', 'организм', 'бактерия', 'эволюция', 'растение'],
'информатика': ['алгоритм', 'программа', 'компьютер', 'кодирование', 'операционная система'],
'математика': ['функция', 'уравнение', 'интеграл', 'производная', 'теорема'],
'музыка': ['нота', 'аккорд', 'гармония', 'инструмент', 'мелодия'],
'история': ['событие', 'война', 'революция', 'империя', 'цивилизация']
}
def shuffle_word(word):
"""Перемешивает буквы в слове"""
anagram = list(word)
random.shuffle(anagram)
return ''.join(anagram)
def play_game():
print("Добро пожаловать в игру \"Анаграммы\"!")
# Список категорий
categories = list(words.keys())
while True:
# Выбор категории
for i, category in enumerate(categories):
print(f"{i+1}. {category}")
choice = int(input("\nВыберите категорию (введите номер от 1 до 5): "))
if not 1 <= choice <= len(categories):
print("Неверный ввод! Попробуйте еще раз.")
continue
chosen_category = categories[choice - 1]
words_left = words[chosen_category].copy()
while words_left:
word = random.choice(words_left)
anagram = shuffle_word(word)
print(f"\nАнаграмма: {anagram}")
guess = input("Введите ваше предположение: ")
if guess == word:
print("Верно! Вы справились с этой анаграммой.")
words_left.remove(word)
else:
print(f"К сожалению, неверно. Правильный ответ был: {word}.")
print(f"Все слова в категории '{chosen_category}' разгаданы. Выберите другую категорию.")
if __name__ == "__main__":
play_game()
### Описание работы программы:
1. **База данных слов**: В начале программы создается словарь `words`, который содержит пять категорий со списком слов для каждой категории.
2. **Функции**:
- `shuffle_word`: Перемешивает буквы в слове и возвращает анаграмму.
- `play_game`: Основная функция, которая запускает игровой процесс.
3. **Игра**:
- Игрок выбирает одну из пяти предложенных категорий.
- Из выбранной категории случайным образом выбирается слово, которое затем перемешивается.
- Игрок пытается угадать исходное слово.
- Если игрок угадывает правильно, слово удаляется из списка оставшихся слов.
- Когда все слова в одной категории разгаданы, игроку предлагается выбрать другую категорию.
Этот код легко расширяемый: вы можете добавить больше слов в каждую категорию или даже новые категории.