mighaoty 发表于 2020-4-11 15:31:06

零基础python入门课后题的水仙花数函数求解

为什么18讲水仙花数函数的这串代码输出后是这样的
def Narcissus():
    for each in range(100, 1000):
      temp = each
      sum = 0
      while temp:
            sum = sum + (temp%10) ** 3
            temp = temp // 10# 注意这里用地板除

      if sum == each:
            print(each, end='\t')

print("所有的水仙花数分别是:", end='')



输出结果为:
>>> Narcissus()
153        370        371        407        所有的水仙花数分别是:

老八秘制 发表于 2020-4-11 15:40:01

def Narcissus():
    for each in range(100, 1000):
      temp = each
      sum = 0
      while temp:
            sum = sum + (temp%10) ** 3
            temp = temp // 10# 注意这里用地板除

      if sum == each:
            print(each, end='\t')

print("所有的水仙花数分别是:", end='')
Narcissus()

mighaoty 发表于 2020-4-11 15:57:33

老八秘制 发表于 2020-4-11 15:40


您是说把    Narcissus() 包含到函数里吗
可是这样的话输出就是这样一直重复输出......还是我没理解您的意思
153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:153        370        371        407        所有的水仙花数分别是:

老八秘制 发表于 2020-4-11 16:02:26

mighaoty 发表于 2020-4-11 15:57
您是说把    Narcissus() 包含到函数里吗
可是这样的话输出就是这样一直重复输出......还是我没理解您的 ...


def Find():
        for i in range(100,1000):
                if int(str(i))**3 + int(str(i))**3 + int(str(i))**3 == i:
                        print(i)
页: [1]
查看完整版本: 零基础python入门课后题的水仙花数函数求解