9.29M
Категория: ПрограммированиеПрограммирование

Создайте игру «Поле чудес»

1.

Группа №2 проекта «Цифровые кафедры»
Исаева Мадина Асланбековна
Малышева Диана Исламовна
Панасенко Валерия Николаевна
Юрикова Дарья Юрьевна
2024 г.

2.

Условие решаемой задачи
Создайте игру «Поле чудес». Выберите известное предложение и удалите из него
случайное слово. Затем предложите пользователю угадать это слово по буквам. Когда
пользователь вводит букву, программа проверяет, есть ли эта буква в загаданном
слове.
Если есть, то нужно к сумме очков прибавить 100, а также
вывести на экран все угаданные буквы с учётом пустых мест,
где буквы в слове ещё не угаданы. Если человек не угадал
букву, то нужно вычесть 100 очков.
Когда человек полностью угадает слово, вывести
на экран фразу: «Вы победили!»

3.

Игра состоит из 3
отборочных туров, 3 туров
основной игры

4.

Общий алгоритм решаемой задачи

5.

import codecs
import random
def clear():
print("\n" * 40)
def editor():
Quests = codecs.open('Questions.txt',"r", "UTF-8").read().splitlines()
for i in range(len(Quests)):
if ('') in Quests:
Quests.remove('')
Num_Of_Quests = len(Quests)
clear()
print("Количество слов в базе:", Num_Of_Quests)
Vvod_2=int(input("Что сделать? 1.Вернуться 2.Показать список"))
if Vvod_2 == 1:
clear()
menu()
elif Vvod_2 == 2:
print('\n')
for i in range(len(Quests)):
print(Quests[i], '\n')
Vvod_2=int(input("Что сделать? 1.Вернуться 2.Показать список 3.Добавить слово:"))
else:
print("Некорректный ввод!")
def game():
def check():
for i in range(len(Answer)):
if ListPlayer[i] == "*":
return 1
return 0
Points=0
Quests = codecs.open('Questions.txt',"r", "UTF-8").read().splitlines()
for i in range(len(Quests)):
if ('') in Quests:
Quests.remove('')
Selected_raw=random.choice(Quests)
Selected=Selected_raw.split(".")
Текст программы

6.

Question=(Selected[1])
Answer=(Selected[0])
ListAnswer=list(Answer)
ListPlayer=["*"]*len(Answer)
gamestatus=1
while gamestatus==1:
print(Question)
print("Количество баллов:", Points)
print(*ListPlayer)
Found=0
NumOfFound=0
Symbol=input("Введите букву:")
while (len(Symbol)!=1) or ((ord(Symbol)>1105) or (ord(Symbol)<1040) and (ord(Symbol)!=1025)):
Symbol=input("Некорректный ввод! Введите букву:")
if (ord(Symbol)<=1103 and ord(Symbol)>=1072):
Symbol = chr(ord(Symbol)-32)
elif ord(Symbol)==1105:
Symbol = chr(1025)
for i in range(len(Answer)):
if ListAnswer[i]==Symbol:
if ListAnswer[i] == ListPlayer[i]:
clear()
Found=2
else:
ListPlayer[i]=Symbol
Found=1
NumOfFound=NumOfFound+1
if Found==1:
clear()
print(Symbol)
print("Есть такая буква!")
Points=Points+(100*NumOfFound)
Текст программы

7.

elif Found==0:
clear()
print(Symbol)
print("Такой буквы здесь нет!")
Points=Points-100
else:
print("Такая буква уже была в слове!")
gamestatus=check()
print("Конец игры! Вы победили! Вы угадали слово:",
Answer)
print("Количество баллов в конце игры:", Points)
def menu():
print("ПОЛЕ ЧУДЕС!")
print("1. Играть")
print("2. Библиотека слов")
print("3. Выйти")
Vvod= int(input("Введите номер действия:"))
if Vvod==1:
clear()
print("Играем!")
game()
elif Vvod==2:
editor()
elif Vvod == 3:
print("Выходим!")
else:
clear()
print("Некорректный ввод!", "\n")
menu()
clear()
menu()
Текст программы

8.

Результаты работы программы
1. Самоходное
транспортное средство с
двигателем внутреннего
сгорания (Автомобиль)
2. Одежда девочек (Юбка)
3. Вид оружия (Винтовка)
4. Элемент автомобиля
(Колесо).
колесо
Элемент автомобиля

9.

Команда проекта
Малышева Диана Исламовна
студентка 3 курса англо-немецкой
группы
Исаева Мадина Асланбековна
студентка 3 курса англо-немецкой
группы

10.

Юрикова Дарья Юрьевна
студентка 3 курса англо-немецкой
группы
Панасенко Валерия Николаевна
студентка 3 курса англо-немецкой
группы
10

11.

Благодарим за внимание!
English     Русский Правила