3位水仙花数计算_Python123

3位水仙花数计算


‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‮

题目来自:Python123

“3位水仙花数”是指一个三位整数,其各位数字的3次方和等于该数本身。例如:ABC是一个“3位水仙花数”,则:A的3次方+B的3次方+C的3次方 = ABC。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

请按照从小到大的顺序输出所有的3位水仙花数,请用一个“逗号+空格”分隔输出结果。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

注意:这是一个OJ题目,输出格式要严格一致,最后一位水仙花数后没有逗号。

算法:通过取余取整来分别求得A /B/C,再进行判断A3+B3+C**3==ABC,Ture则存入列表

lst=[]
for i in range(100,1000):
    m=i%10
    n=i//10
    sum1=0
    while m+n!=0:
        sum1+=m**3
        m=n%10
        n=n//10
    if sum1==i:
        lst.append(i)
for x in lst:
  if x == lst[-1]:
    print(x)
  else:
    print(x, end = ', ')

你可能感兴趣的:(Python123,python,算法)