Python 计算圆的周长、面积和周长与面积之比
学习CS考试,基本上我必须遵循与此类似的说明 编写一个程序,这是一个包含主函数和 调用main,并将程序命名为ratio.py。基本结构 该程序的结构应如下所示:Python 计算圆的周长、面积和周长与面积之比,python,Python,学习CS考试,基本上我必须遵循与此类似的说明 编写一个程序,这是一个包含主函数和 调用main,并将程序命名为ratio.py。基本结构 该程序的结构应如下所示: def main(): ... return main() where the ellipsis indicates where you should place the code that performs following computations: -您应该提示用户输入与 圆的半径。使用类似以下代码执行此操
def main():
...
return
main() where the ellipsis indicates where you should place the code that performs following computations:
-您应该提示用户输入与
圆的半径。使用类似以下代码执行此操作:
半径=整数(输入(“圆半径?”)
- 使用公式c=2πr计算圆的周长,其中r是半径,c是周长。使用 π为3.14159
- 使用公式c=πr2计算圆的面积
- 打印周长与面积之比(a与b之比为a除以b)
def main():
radius = int(input("circle radius? "))
pi = 3.14159
r = radius
c = 2*pi*r
print(2*pi*r)
a = pi*r*r
print(pi*r*r)
ratio = c / a
return(ratio)
print("the ratio of the circumference to the area is",ratio)
main()
最终的目标是得到这样的东西:
def main():
...
return
main() where the ellipsis indicates where you should place the code that performs following computations:
- $python3.py
- 圆半径?二,
- 周长与面积之比为李>
- 在哪里????由实际比率替换
语句通常应位于文件顶部,而不是函数内部。它们将在函数中工作,但它的形式很差。这可能不是在课堂上教的,但在阅读其他人的代码时,您会习惯于看到特定的模式import
- 就风格而言,Python通常使用大写字母作为常量的名称,因此
比PI=3.14159更常见。这是次要的,无论哪种方式都有效。这是一个值得坚持的好风格,因为它将有助于使您的代码与他人的代码相匹配PI=3.14159
- 您需要使用提供给您的方程式计算面积:a=PI*r*r(注意:原始问题错误地将“c”用于面积。“c”是周长。)
- 您需要返回c/a,这是请求的比率
- 您可能需要打印出用于测试的返回值。可以通过将main()返回的值存储在变量中,然后打印它来实现 下面是如何从main()函数返回值:
- 您已经非常接近解决这个问题。以下是一些帮助您完成任务的想法:
def main():
...
return c/a
ratio = main()
print(ratio)
# or...
print("The ratio is:", ratio)
奇怪的是,当您将pi声明为两行以上的变量时,会执行
c=(2*math.pi*r)
。Doingmath.pi
进入python的数学库,并挖掘出更精确的pi版本。出于所有目的,您完全没有使用pi
变量。
有关更多信息,请参阅
此外,同样的计算要进行两次
c = 2*math.pi*r
return(2*math.pi*r)
c最终只是被垃圾收集(也就是说,计算机进行计算,然后将其放入垃圾中)而从未被使用。最好是简单地返回c
对于范围问题,我相信作为一个初学者,您不会真正了解,请将import math
放在主函数上方,不要插入
不过,仅供将来参考,所以倾向于针对您在代码中发现的孤立问题;不是为了一个完整的代码审查。一个更容易接受的问题是“我的函数返回了一个意外的值”,而不是“我的函数不工作”我们又回来了吗?尽量避免有太多的问题被解决;这一条已经好多了,但似乎错过了一条错误消息。出了什么问题,你期望会发生什么?你应该编辑你现有的问题来改进它们,而不是发布新的问题。反复问基本相同的问题是获得自动问题禁令的一个好方法。函数将返回结果。你把它扔掉。你应该把它打印出来。考虑一个函数的开始或完成。一个函数在返回之后不能做任何事情。将
打印
移动到返回
之前(如果你想返回任何东西,规范不会告诉你。)@d3vid:codereview是用于工作的代码。他实际上需要定义pi
。这是要求。你能详细解释一下如何完成最后一步吗。也非常感谢您的帮助。@user3283574result=main()
然后print(result)
。