Загрузка данных


questions = [
    ("Что такое топология сети?", ["Схема соединения узлов", "Скорость передачи", "Тип кабеля"], 0),
    ("Какой протокол отвечает за адресацию?", ["IP", "HTTP", "FTP"], 0),
    ("Что такое маршрутизатор?", ["Устройство для соединения сетей", "Тип кабеля", "Программа"], 0),
    ("Что такое DNS?", ["Служба имён доменов", "Тип соединения", "Вид атаки"], 0),
    ("Какой порт у HTTP?", ["80", "443", "22"], 0),
]

name = input("Введите имя: ")
score = 0

for i, (question, options, correct) in enumerate(questions):
    print(f"\nВопрос {i+1}: {question}")
    for j, opt in enumerate(options):
        print(f"  {j+1}. {opt}")
    try:
        answer = int(input("Ответ: ")) - 1
    except ValueError:
        answer = -1
    if answer == correct:
        print("Верно!")
        score += 1
    else:
        print(f"Неверно. Правильно: {options[correct]}")

percent = score / len(questions) * 100
print(f"\n{name}, результат: {score} из {len(questions)} ({percent:.0f}%)")
if percent >= 80:
    print("Оценка: 5")
elif percent >= 60:
    print("Оценка: 4")
elif percent >= 40:
    print("Оценка: 3")
else:
    print("Оценка: 2")