Как вывести результат решения примеров в конце программы и "нажмите ENTER для выхода" для её выхода?

Есть программа для решения примеров.

name = input ("Привет! Как тебя зовут? ")
print(f"Тогда {name}, давай решать примеры: ")

for i in range(3):
    from random import randint, choice

    num1 = randint(1, 50)
    num2 = randint(1, 50)


    elements = ["+", "-"]
    dia = choice(elements)

    p = str(num1) + dia + str(num2) + " = "
    nsum = eval(p. replace("=", ""))

      
    num = int(input(p))
    if(num == nsum):
        a = ("Правильно")
        print(a)
        
        
   
    else:
        b = ("Не правильно! Будь внимательнее")
        print(b)

Как вывести результат решения примеров в конце программы и для её выхода "нажмите ENTER для выхода"на Python?


Ответы (2 шт):

Автор решения: LolPopGames

Чтобы вывести результаты решений нужно сделать следующее

from random import randint, choice

name = input ("Привет! Как тебя зовут? ")
print(f"Тогда {name}, давай решать примеры:")

results = []
correct_count = 0
incorrect_count = 0

for _ in range(3):
    num1 = randint(1, 50)
    num2 = randint(1, 50)


    elements = ["+", "-"]
    dia = choice(elements)

    p = str(num1) + dia + str(num2) + " = "
    nsum = eval(p. replace("=", ""))

      
    num = int(input(p))

    if(num == nsum):
        a = ("Правильно")
        print(a)
        results.append(p + str(num) + " " + a)
        correct_count+=1

    else:
        b = ("Не правильно! Будь внимательнее")
        results.append(p + str(num) + ' ' + "Не правильно!" + " (" + str(nsum) + ")")
        incorrect_count+=1
        print(b)

print("Результаты:")
print(f"Количество правильных ответов: {correct_count}")
print(f"Количество неправильных ответов: {incorrect_count}")

for i in range(3):
    print(results[i])

input("Для продолжения нажмите ENTER: ")

Что я сделал:

  1. Добавил список results чтобы хранить строки которые мы выведем в конце
  2. Добавил заполнение для списка, если правильно или не правильно
  3. Добавил счетчики правильных и неправильных ответов
  4. Добавил вывод результатов
→ Ссылка
Автор решения: goose_looser
from random import randint, choice

name = input ("Привет! Как тебя зовут? ")
print(f"Тогда {name}, давай решать примеры:")

results = []

#Инициализация счётчиков для верных и неверных ответов
cnt_good_answers = 0
cnt_bad_answers = 0

for _ in range(3):
    num1 = randint(1, 50)
    num2 = randint(1, 50)


    elements = ["+", "-"]
    dia = choice(elements)

    p = str(num1) + dia + str(num2) + " = "
    nsum = eval(p. replace("=", ""))

  
    num = int(input(p))

    if(num == nsum):
        a = ("Правильно")
        print(a)
        results.append(p +  
str(num) + " " + a)
        #Добавление единицы к счётчику верного ответа
        cnt_good_answers += 1

    else:
        b = ("Не правильно! Будь внимательнее")
        results.append(p + str(num) + ' ' + "Не правильно!" + " (" + str(nsum) + ")")
        print(b)
        #Добавление единицы к счётчику неверного ответа
        cnt_bad_answers += 1

print("Результаты:")

for i in range(3):
    print(results[i])

print("Правильных ответов:", cnt_good_answers)
print("Неправильных ответов:", cnt_bad_answers)

input("Для продолжения нажмите ENTER: ")

Был отредактирован код из ответа LolPopGames

→ Ссылка