用Cramer法则得到的python线性方程

时间:2018-02-21 22:18:00

标签: python linear-algebra

我是python的新手并尝试使用Cramer规则编写线性方程式。我输入了公式,并提示用户输入a,b,c,d,e和f,但我的代码出现语法错误。我想修复代码,并且还有一个用于研究和纠正未来错误的系统。

a,b,c,d,e,f = float(input("Enter amount: ")

a*x + by = e
cx + dy = f
x = ed-bf/ad-bc
y=af-ed/ad-bc

if (ad - bc == 0)print("The equation has no solution")

else print ("x=" x, "y=" y,)

1 个答案:

答案 0 :(得分:0)

基本上,您的代码是一个巨大的语法错误。请阅读一些基本教程,如评论中所建议的那样。希望这有助于学习过程(我没有通过实际的数学公式):

a = float(input("Enter a: "))
b = float(input("Enter b: "))
c = float(input("Enter c: "))
d = float(input("Enter d: "))
e = float(input("Enter e: "))
f = float(input("Enter f: "))

##a*x + by = e
##cx + dy = f

if (a*d - b*c == 0):
    print("The equation has no solution")
else:
    x = (e*d-b*f)/(a*d-b*c)
    y = (a*f-e*d)/(a*d-b*c)

    print ("x=%s" % x, "y=%s" % y)

您必须在要倍增的数字之间添加*。您的输入语句中缺少一个括号。方程式本身已被注释掉,因为否则Python会将它们作为代码(错误地编写代码)。你必须将分母括在括号中,因为数学。您必须使用if结束elseelifforwhile:等。缩进在Python中非常重要。