xxm8023 发表于 2022-10-24 09:59:22

这道题用Python怎么做


程序框图用python表达

tommyyu 发表于 2022-10-24 10:08:45

a, b, n = 1, 1, 1
while True:
    b = b+2*a
    a = b-a
    n = n+1
    if abs((b*b)/(a*a)-2) < 0.01:
      break
print(n)

z5560636 发表于 2022-10-24 10:30:01

流程图都画出来了,应该很简单了。
import math


def jisuan(a, b, n):
    b += 2 * a
    a -= b
    n += 1
    # 绝对值 abs
    # 平方 math.pow()
    print(abs(math.pow(b, 2) / math.pow(a, 2) - 2))
    if abs(math.pow(b, 2) / math.pow(a, 2) - 2) < 0.01:
      jisuan(a, b, n)
    else:
      print(n)


if __name__ == '__main__':
    str_int = input("请输入a, b, n 的值(示例:1, 1, 1)")
    if len(str_int.split(',')) != 3:
      print("输入的数据为 3 个")
      exit(0)

    a, b, n =
    jisuan(a, b, n)
页: [1]
查看完整版本: 这道题用Python怎么做