鱼C论坛

 找回密码
 立即注册
查看: 2305|回复: 13

[已解决]水仙花那道题!!!

[复制链接]
发表于 2020-2-24 09:28:19 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
大佬们,答案咋看懂的啊,有一说一我是数学看不懂。 嘤嘤嘤!还有这是我自己瞎写的,哪错了呢?
f = int(1) , s = int(0) , t = int(0)
i = str('f' + 's' + 't')
while i < 1000:
  i = str('f' + 's' + 't')
  if i == (f**3) + (s**3) + (t**3):
    print (i,end = ' ' )
  if t <= 9:
    t += 1
if t == 10:
    t = 0
    s += 1
if s <= 9:
    s += 1
else :
    s = 0
    f += 1
         
最佳答案
2020-2-24 09:45:41
为什么不用 for 循环呢
for f in range(1, 10):
    for s in range(10):
        for t in range(10):
            i = int(str(f) + str(s) + str(t))
            if i == (f ** 3 + s ** 3 + t ** 3):
                print(i, end=' ')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-2-24 09:34:37 | 显示全部楼层
本帖最后由 一个账号 于 2020-2-24 09:40 编辑

能不能把答案贴上来?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-24 09:36:09 | 显示全部楼层
能不能贴一下题目呢?或者说明一下你想实现什么效果。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-24 09:39:48 | 显示全部楼层
本帖最后由 一个账号 于 2020-2-24 09:41 编辑
蓝色忘忧草 发表于 2020-2-24 09:36
能不能贴一下题目呢?或者说明一下你想实现什么效果。


他要实现这种效果:
153 是水仙花数!
370 是水仙花数!
371 是水仙花数!
407 是水仙花数!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-24 09:40:02 | 显示全部楼层
第一句语法有误
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-24 09:41:49 | 显示全部楼层
zltzlt 发表于 2020-2-24 09:40
第一句语法有误

分号写成了逗号
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-24 09:45:41 | 显示全部楼层    本楼为最佳答案   
为什么不用 for 循环呢
for f in range(1, 10):
    for s in range(10):
        for t in range(10):
            i = int(str(f) + str(s) + str(t))
            if i == (f ** 3 + s ** 3 + t ** 3):
                print(i, end=' ')
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-24 09:51:52 | 显示全部楼层
为什么不用 for 循环呢?
import math
for i in range(100, 1000):
    num = list(str(i))
    num = [int(each) for each in num]
    if math.pow(num[0], 3) + math.pow(num[1], 3) + math.pow(num[2], 3) == i:
        print(i, "是水仙花数!")
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2020-2-24 09:58:29 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-24 11:33:52 | 显示全部楼层
语法错了好多
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-24 12:29:11 | 显示全部楼层
一个账号 发表于 2020-2-24 09:34
能不能把答案贴上来?

题目是
编写一个程序,求 100~999 之间的所有水仙花数。
这是答案:
for i in range(100, 1000):
    sum = 0
    temp = i
    while temp:
        sum = sum + (temp%10) ** 3
        temp //= 10         # 注意这里要使用地板除哦~
    if sum == i:
        print(i)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-24 12:30:09 | 显示全部楼层
零零零909 发表于 2020-2-24 12:29
题目是
编写一个程序,求 100~999 之间的所有水仙花数。
这是答案:

看不懂吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-24 19:09:16 | 显示全部楼层
a = 100
while a <= 999:  
    x = a // 100
    y = a % 100 // 10
    z = a %100 %10
    if x**3 + y**3 + z**3 == a:   
        print (a)
    a += 1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-3 13:23:22 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-12 07:03

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表