Как создать викторину на языке программирования Python?

Можно ли создать приложение, которое случайным образом выбирает вопросы из файла и объединяет их, чтобы создать викторину для учащихся? После этого приложение должно проверять ответы на правильность и выдавать количество набранных баллов?
  • 20 октября 2023 г. 7:28
Ответы на вопрос 1
Да, можно создать викторину на языке программирования Python. Вот пример простой викторины:

```python
class Question:
    def __init__(self, question, options, answer):
        self.question = question
        self.options = options
        self.answer = answer

    def ask_question(self):
        print(self.question)
        for index, option in enumerate(self.options):
            print(f"{index+1}. {option}")

        user_answer = input("Введите номер выбранного варианта: ")
        return int(user_answer) == self.answer


questions = [
    Question("Какое число является корнем уравнения x^2 - 4 = 0?", [2, 3, 4, 5], 1),
    Question("Какое возможное значение имеет тип данных bool?", ["Истина", "Ложь", "Истина и ложь", "0 и 1"], 3),
    Question("Какой язык программирования наиболее популярен в настоящее время?", ["Python", "C++", "Java", "JavaScript"], 1)
]

score = 0
for question in questions:
    is_correct = question.ask_question()
    if is_correct:
        score += 1

print(f"Вы набрали {score} баллов из {len(questions)} возможных.")
```

Для создания викторины, нужно создать класс `Question` со свойствами вопроса, вариантами ответа и правильным ответом. Затем мы создаем список объектов `Question` с вопросами и ответами.

После этого мы проходим по списку вопросов и задаем пользователю каждый вопрос, путем вызова метода `ask_question()`. Метод печатает вопрос и варианты ответа, запрашивает ответ пользователя и затем возвращает `True`, если пользователь выбрал правильный ответ, или `False` в противном случае.

Наконец, мы увеличиваем счет в случае правильного ответа и выводим общий результат.
Похожие вопросы