验证定理:任意正整数n的立方一定可以表示为n个连续奇数之和
执行思路:定义函数,枚举n个连续奇数添加到列表,对列表求和看是否等于n的立方
注意点:调用函数:list(),sum(), range()
循环方法用到:while,for ... in ...
条件语句:if...else
输出: join()方法,str()格式转换,format格式化
上代码(附注释)
def vern(n):#定义验证函数
if n==1:
print("1^3=1")
return
n3=int(pow(n,3))
j=1
while True:
nlist=list(range(j,j+2*n,2)) #枚举n个连续奇数并添加列表
if sum(nlist)==n3:
break
else:
j=j+2 #让起始奇数发生变化
#格式化输出
slist=[]
for num in nlist:
slist.append(str(num))
strlist="+".join(slist)
print("{}³={}".format(n,strlist))
#调用函数
exit=0
while exit==0:
n=eval(input("请输入正整数n:"))
vern(n)
exit=eval(input("是否退出?回复0继续,回复1退出:"))