Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 15, 2018 21:48:14

ser98795
Зарегистрирован: 2018-10-15
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Добавить счётчик очков

Здравствуйте!
Делаю для дочки тренажёр по математике. Как тут добавить счётчик, т.е. за верные ответ +1 балл, за неверный -2(что бы сохранялись данные, а не каждый раз считались с нуля)?

 import random
score = ()
def y():
    a = random.randint(0,10)
    b = random.randint(1,20)
    print(a,"*",b,"= ? ")
    x = int(input(" a * b = "))
    if x == a*b:
        score=+1
        print("Правильно)",score)
    else:
        score=-2
        print("Не верно(",'Правильный ответ = ', a*b, score)
    return y()
y()

Отредактировано ser98795 (Окт. 15, 2018 22:00:32)

Офлайн

#2 Окт. 15, 2018 22:43:46

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Добавить счётчик очков

Например использовать сохранение результата в файл

 import random
def load_score():
    try:
        with open('score.txt') as f:
            score = int(f.read())
    except Exception:
        score = 0
    return score
def save_score(score):
    with open('score.txt', 'w') as f:
        f.write(str(score))
def question(score):
    a = random.randint(0,10)
    b = random.randint(1,20)
    print(a,"*",b,"= ? ")
    x = int(input(" a * b = "))
    if x == a*b:
        score += 1
        print("Правильно)",score)
    else:
        score -= 2
        print("Не верно(",'Правильный ответ = ', a*b, score)
    return score
def main():
    score = load_score()
    while True:
        score = question(score)
        save_score(score)
main()



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Окт. 16, 2018 00:02:03

ser98795
Зарегистрирован: 2018-10-15
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Добавить счётчик очков

JOHN_16
Например использовать сохранение результата в файл
Спасибо, идеально!

Офлайн

#4 Окт. 16, 2018 09:16:22

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Добавить счётчик очков

Далее можете расширить упражнения на деление. ЧТо бы получились удобные примеры (без дробей) можно начат ьс реализации алгоритма тупого перебора используя оператор остатка удаления. У вас должна получиться функция которая умножает (она уже ест) и функция которая делит. А каждый новый вопрос это случайный выбор из умножения или деления ( random.choice вам помощь).



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version