Как вывести результат решения примеров в конце программы и "нажмите 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: ")
Что я сделал:
- Добавил список
results
чтобы хранить строки которые мы выведем в конце - Добавил заполнение для списка, если правильно или не правильно
- Добавил счетчики правильных и неправильных ответов
- Добавил вывод результатов
Автор решения: 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