Почему я каждый раз получаю результат оценки F?

#python #jupyter-lab

#python #jupyter-lab

Вопрос:

Выполняется весь код, и первая половина работает (т. Е. Часть <40), но если он попадает в часть else, он выдает только оценку F.

 w = input("Input Student ID:")
x = int(input("Input Assignment Score:"))
y = int(input("Input Midterm Score:"))

if (x   y)/2 < 40:
    print(w   ": F Without Final")
else:
    z = int(input("Input Final Score:"))
    if (.25 * x   .25 * y   .5 * z)/3 < 50:
        print(w   ": F")
    elif (.25 * x   .25 * y   .5 * z)/3 < 60:
        print(w   ": D")
    elif (.25 * x   .25 * y   .5 * z)/3 < 70:
        print(w   ": C")
    elif (.25 * x   .25 * y   .5 * z)/3 < 80:
        print(w   ": B")
    else:
        print(w   ": A")
 

Ответ №1:

Во второй части вы делаете средневзвешенное значение; удалите /3 , и это должно сработать

Ответ №2:

Не делите результат на 3 для каждого оператора if

 w = input("Input Student ID:")
x = int(input("Input Assignment Score:"))
y = int(input("Input Midterm Score:"))

if (x   y)/2 < 40:
    print(w   ": F Without Final")
else:
    z = int(input("Input Final Score:"))
    if (.25 * x   .25 * y   .5 * z) < 50:
        print(w   ": F")
    elif (.25 * x   .25 * y   .5 * z) < 60:
        print(w   ": D")
    elif (.25 * x   .25 * y   .5 * z) < 70:
        print(w   ": C")
    elif (.25 * x   .25 * y   .5 * z) < 80:
        print(w   ": B")
    else:
        print(w   ": A")