3273 5

[作业] 计算100-10000以内的水仙花数和四叶玫瑰数 [推广有奖]

  • 0关注
  • 0粉丝

大专生

60%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
1.0500
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
440 点
帖子
42
精华
0
在线时间
43 小时
注册时间
2021-4-10
最后登录
2023-3-22

楼主
努力学习的学渣儿 发表于 2021-4-14 13:20:35 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
水仙花数:指一个3位数,他的每个位上的数字三次幂之和等于它本身的数;
四叶玫瑰数:四位数各位上的数字的四次方之和等于它本身的数.
提示:将数据分为两组,一组为三位数,一组为四位数,分别计算。(考虑矩阵的运算)
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:水仙花

回帖推荐

owenqi 发表于4楼  查看完整内容

你从这个思路出发,矩阵的计算无非就是矩阵的加法而已。

沙发
llb_321 在职认证  发表于 2021-4-14 14:58:38
  1. for (i in 100:999) {
  2.   if (((i %/% 100) ^ 3 + (i %% 100 %/% 10) ^ 3 + (i %% 100 %% 10) ^ 3)
  3.       == i)
  4.     print(i)
  5. }
  6. #[1] 153
  7. #[1] 370
  8. #[1] 371
  9. #[1] 407

  10. for (i in 1000:9999) {
  11.   if (((i %/% 1000) ^ 4 + (i %% 1000 %/% 100) ^ 4 + (i %% 1000 %% 100 %/% 10) ^ 4 + (i %% 1000 %% 100 %% 10) ^ 4)
  12.       == i)
  13.     print(i)
  14. }
  15. #[1] 1634
  16. #[1] 8208
  17. #[1] 9474
复制代码

藤椅
努力学习的学渣儿 发表于 2021-4-17 15:02:57
llb_321 发表于 2021-4-14 14:58
for函数是循环函数 可以帮我想想怎么用矩阵解决这个问题吗

板凳
owenqi 在职认证  学生认证  发表于 2021-4-18 00:57:20
努力学习的学渣儿 发表于 2021-4-17 15:02
for函数是循环函数 可以帮我想想怎么用矩阵解决这个问题吗
你从这个思路出发,矩阵的计算无非就是矩阵的加法而已。
  1. x <- 100 :999

  2. # method 1
  3. x[(x%/%100)^3 + (x %% 100 %/% 10)^3 + (x %% 100 %% 10)^3 == x]

  4. # method 2
  5. mx <- cbind(rep(1:9, each = 100), rep(rep(0:9, each = 10), 9), rep(0:9, times = 90))
  6. x[rowSums(mx^3) == x]

  7. y <- 1000:9999

  8. # method 1
  9. y[(y %/% 1000)^4 + (y %% 1000 %/% 100)^4 + (y %% 1000 %% 100 %/% 10)^4 + (y %% 1000 %% 100 %% 10)^4 == y]

  10. # method 2
  11. my <- cbind(rep(1:9, each = 1000), rep(rep(0:9, each = 100), 9), rep(rep(0:9, each = 10), 90), rep(0:9, times = 900))
  12. y[rowSums(my^4) == y]
复制代码

报纸
owenqi 在职认证  学生认证  发表于 2021-4-18 03:28:14
另外提一句,生成矩阵也可以用这个方法。
  1. x <- 100:999
  2. mx <- do.call(rbind, lapply(strsplit(as.character(x), ''), as.numeric))
复制代码

地板
努力学习的学渣儿 发表于 2021-5-8 14:17:01
owenqi 发表于 2021-4-18 00:57
你从这个思路出发,矩阵的计算无非就是矩阵的加法而已。
这种做法 我明白了 谢谢

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-11 16:41