Задание
Задание. Создать приложение викторина с использованием ООП.
Классы:
- Класс Вопрос - содержит текст вопроса, варианты ответов и правильный ответ.
- Класс Игрок - содержит имя игрока и его счет.
- Класс Игра - содержит список вопросов, список игроков и методы для начала игры, задания вопросов и подсчета очков.
Алгоритм работы:
- Создаем объекты класса Вопрос и добавляем их в список вопросов.
- Создаем объекты класса Игрок и добавляем их в список игроков.
- Начинаем игру, задавая каждому игроку по очереди вопросы из списка.
- Если игрок ответил правильно, увеличиваем его счет на 1.
- По окончании игры выводим результаты: имя игрока и его счет.
Функционал программы
Консольная программа обладает простым функционалом: в консоль выводится сообщение от программы в котором программа спрашивает ваше имя и предлагает сыграть в викторину. В консоль выводятся вопросы и вам нужно дать правильный ответ. Программа вам сообщает верный ответ или нет и вконце выводит количество правильных ответов.
Вторая программа на tkinter и customtkinter обладает уже более современным интерфейсом и умеет работать с БД. Из БД в окно программы выводится вопрос, ответ на который необходимо вписать в текстовое поле, в случае правильного ответа будет вызваноокошко с сообщением о том, что ответ верный и выполнен переход к следующему вопросу. В конце выводится окошко с вашими результатами и окошко в котором сообщается, что вопросы закончились.
Третья программа позволяет вести учет результатов викторины.
- добавление игрока и его результатов
- редактирование игрока и его результатов
- удаление данных
- поиск данных
- перезагрузка данных после поиска
Содержание отчета к программе
Оглавление
1.1 Современные языки программирования, включая Python. 2
1.2 ООП в Python. 3
1.3 Python как современный язык программирования. 4
2 Практическая часть. 5
2.1 Постановка задачи. 5
2.2 Разработка консольного приложения «Викторина» на языке Python. 5
2.3 Разработка приложения «Викторина» на языке Python с применением GUI – библиотеки tkinter и customtkinter 7
2.4 Разработка приложения «Учет результатов викторины» на языке Python с применением GUI – библиотеки tkinter и customtkinter 10
Фрагмент программного кода
class Question: def __init__(self, prompt, answer): self.prompt = prompt self.answer = answer class Player: def __init__(self, name): self.name = name self.score = 0 class Game: def __init__(self, player): self.player = player self.questions = [ Question("Как называется столица Франции?", "Париж"), Question("Какой год был основан Apple?", "1976"), Question("Как называется самое большое озеро в Африке?", "Виктория") ] def run(self): print("Привет, " + self.player.name + "! Давай сыграем в викторину.") for question in self.questions: answer = input(question.prompt + "\nТвой ответ: ") if answer.lower() == question.answer.lower(): print("Правильно!") self.player.score += 1 else: print("Неправильно.") print("Твой итоговый счет: " + str(self.player.score) + " из " + str(len(self.questions)) + ".") if __name__ == "__main__": name = input("Привет! Как тебя зовут? ") player = Player(name) game = Game(player) game.run()
Скриншот архива с проектом
Пояснения по запуску программы
Установить Python? установить PyCharm и открыть проект с помощью PyCharm. Запустить код по очереди или можtnt сразу запустить одновременно 3 программы.
admin