-3
print "Welcome to Dylan's Pythagorean Theorem Solver."

from math import sqrt 

print "What are we solving for? A hypotenuse or a leg?"

ask = raw_input("# ")

if ask == "hypotenuse":
    print "What is the value of your first leg?"

    leg1 = raw_input("# ")

    print "The value of your first leg is %s. What is the value of your second leg?" % (leg1)

    leg2 = raw_input("# ")    

    print "The length of your hypotenuse is "sqrt((leg1 ** 2) + (leg2 ** 2))
4

1 回答 1

3

我是初学者,但这就是我让你的代码工作的方式:

Raw_input 产生字符串。您需要先将 leg1 和 leg2 转换为整数或浮点数,然后才能在 sqrt 中使用它们。你可以这样做:

leg1 = int(input("# "))

你有同样的问题,但在打印中相反(python 期待一个 str 但得到一个浮点数)。您还缺少打印中的运算符。

为 sqrt 的结果创建一个新变量,将其转换为 str,然后在 print 中使用该变量可能更容易。

hypotenuse = str(sqrt((leg1 ** 2) + (leg2 ** 2)))
于 2012-11-03T07:17:13.150 回答