找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 120|回复: 2

[求助] 帮忙看看哪有问题

2

主题

2

帖子

2

积分

贫民

积分
2
安妮的提波斯 发表于 2019-3-12 20:56:23 | 显示全部楼层 |阅读模式
import random
import math
a = random.choice(range(10))
b = random.choice(range(10))
c = random.choice(range(10))
r2 = a*100 + b*10 +c
r2 = (int(input("请输入一个三位数")))
if r2 == pow(a,3) +pow(b,3) +pow(c,3):
    print('是水仙花数')
else:
    print('不是水仙花数')
回复

使用道具 举报

0

主题

14

帖子

14

积分

贫民

积分
14
一叶落而知秋 发表于 2019-3-13 13:15:25 | 显示全部楼层
逻辑上就有问题,你要判断你输入的一个数字是不是“水仙花数”,那你还弄个随机数发生器干嘛?
回复 支持 反对

使用道具 举报

0

主题

4

帖子

4

积分

贫民

积分
4
siegebaoniu 发表于 6 天前 | 显示全部楼层
  1. #Python 3.7
  2. import random
  3. import math

  4. d = []
  5. for a in range(10):
  6.     for b in range(10):
  7.         for c in range(10):   
  8.             r = pow(a,3) +pow(b,3) +pow(c,3)
  9.             if r not in d and r <= 999:
  10.                 d.append(r)
  11. #print(d)
  12. r2 = (int(input("请输入一个三位数")))
  13. if r2 in d:
  14.     print('是水仙花数')
  15. else:
  16.     print('不是水仙花数')
复制代码
回复 支持 反对

使用道具 举报

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

本版积分规则

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