我需要输入一个大于 2 的数字,然后取平方根,直到平方根小于 2。我需要一个打印语句,其中包括取数字平方根的次数以及输出。到目前为止我所拥有的是:import mathinput_num = float(input("Enter a number greater than two: "))while input_num < 2: input_num = float(input("Enter a number greater than two: "))else: sqrt_num = math.sqrt(input_num) count = 1 while sqrt_num > 2: sqrt_num = math.sqrt(sqrt_num) count += 1 print(count, ": ", sqrt_num, sep = '')随着输出:Enter a number greater than two: 202: 2.1147425268811283: 1.4542154334489537我想包括计数 1 的第一次迭代。如何编写一个正确的循环,使其看起来像:Enter a number greater than two: 201: 4.472135954999582: 2.1147425268811283: 1.4542154334489537
1 回答

尚方宝剑之说
TA贡献1788条经验 获得超4个赞
这是一种很老套的方法,或者至少没有多大意义,因为它使变量 sqrt_num 不是平方根,但我会将 count 初始化为 0 并将 sqrt_num 初始化为 input_num,如下所示:
import math
input_num = float(input("Enter a number greater than two: "))
while input_num < 2:
input_num = float(input("Enter a number greater than two: "))
else:
sqrt_num = input_num
count = 0
while sqrt_num > 2:
sqrt_num = math.sqrt(sqrt_num)
count += 1
print(count, ": ", sqrt_num, sep = '')
添加回答
举报
0/150
提交
取消