Найти - Пользователи
Полная версия: Решение линейного уравнения или как пропустить (?) команду
Начало » Центр помощи » Решение линейного уравнения или как пропустить (?) команду
1
Vathys
Условие задачи следующее:
Даны числа a и b. Решите в целых числах уравнение ax+b=0. Выведите все решения этого уравнения, если их число конечно, выведите слово NO, если решений нет, выведите слово INF, если решений бесконечно много.

Мой код:
a=int(input())
b=int(input())
x=-b/a
if x!=int(x)or a==0 and b!=0:
    print("No")
elif a==0 and b==0:
    print ("INF")
else:
    print(x)

Проблема в том, что команда x=-b/a выполняется даже тогда, когда требуется просто сравнить a и b с 0, и выводится ошибка “division by zero”. Как сделать так, чтобы эта команда не выполнялась?Помогите, пожалуйста.

P.S. Я пыталась переставлять строчки, проверять сначала на нули, но x=-b/a программа считывает, где бы тот ни находился.
FishHook
Может быть сначала нужно проверять на нули, а потом уже делить?
Не, я не знаю, как правильно, может быть логично сначала поделить, а потом уже проверять, можно ли было делить вообще, но мне кажется, что это неправильно. Ну чисто из личного опыта. Я, например, всегда сначала снимаю штаны,
а потом уже сажусь на горшок, и молоко я тоже сначала нюхаю (а вдруг прокисло?) а потом уже пью.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB