py_stepik/quiz.py

37 lines
2.0 KiB
Python
Raw Normal View History

2024-01-26 13:54:41 +00:00
import random
passed, score, count = 0, 0, random.randint(3, 4)
questions = (
("В каком году закончилась Великая Отечественная война?", "1945", 5),
("Как называется треугольник у которого все стороны равны?", "равносторонний", 8),
("Огурец относится к группе бобовых или тыквенных растений?", "тыквенных ", 10),
("Хлопчатник — трава или куст?", "куст", 7),
("Продолжить поговорку: «Куда иголка, туда и …»", "нитка", 10),
("Гидроскопичность — это способность поглощать влагу или пыль?", "влагу", 8),
("Как звали мать Гамлета из трагедии Уильяма Шекспира?", "гертруда", 2),
("Она расскажет вам о любви ценой собственной жизни. Кто она?", "ромашка", 7),
)
sample = random.sample(questions, count)
total_score = sum((*zip(*sample),)[2])
need = int(total_score * 2 / 3)
print("Добро пожаловать на викторину")
print(f"Викторина состоит из {count} вопросов, нужно набрать не менее {need} баллов")
for question, q_answer, q_score in sample:
print("- - - - - - - - - - - -\n")
print(f"Вопрос: \n{question}\n")
otv = input("Ваш ответ: ")
if otv.strip().lower() == q_answer.lower():
print(f"Верно, вы набрали {q_score} баллов")
passed += 1
score += q_score
else:
print("Не верно")
print("- - - - - - - - - - - -\n")
print(f"Вы ответили на {passed} вопросов и набрали {score} из {total_score} баллов.")
print(score >= need and "Вы восхитительны!" or "В следующий раз повезет!")