鱼C论坛

 找回密码
 立即注册
查看: 4679|回复: 8

大佬帮忙看一下

[复制链接]
发表于 2021-10-24 20:26:26 | 显示全部楼层 |阅读模式
30鱼币
C语言教程的阶段考核
下边的是我第三题的答案,当求104的最大质数因子时能求出来,求600851475143的,半天没响应。
  1. #include<stdio.h>
  2. #include<math.h>

  3. #define n 600851475143
  4. int main()
  5. {
  6.     long long j,i,k;
  7.     _Bool b=0;

  8.     for (j=1 ; j < n; j++)
  9.     {
  10.         if(n % j == 0)
  11.         {
  12.             for(i=2 ; i<pow(j,0.5) ; i++)
  13.             {
  14.                 if(j%i==0)
  15.                 {
  16.                     b=1;
  17.                     break;
  18.                 }
  19.                 if(b)
  20.                 {
  21.                     k=j;
  22.                 }
  23.             }
  24.         }
  25.     }
  26.     printf("%lld",k);     
  27.    
  28.     return 0;
  29. }
复制代码

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-10-24 20:27:24 | 显示全部楼层
有没有什么解决办法
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-10-24 21:29:38 | 显示全部楼层
不懂 下一个
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-10-24 22:28:35 | 显示全部楼层
本帖最后由 泌阳 于 2021-10-24 22:30 编辑

要等久点,答案是550145857,可以执行的,我等了半分钟出来的
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-10-25 10:25:35 | 显示全部楼层
泌阳 发表于 2021-10-24 22:28
要等久点,答案是550145857,可以执行的,我等了半分钟出来的

你的答案好象不正确
题目要求最大质数因子

550145857 = 32361521*17
550145857 = 11705231*47
550145857 = 688543*799

明显 550145857 不是质数
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-10-25 22:56:10 | 显示全部楼层
傻眼貓咪 发表于 2021-10-25 10:25
你的答案好象不正确
题目要求最大质数因子

我执行出来就是这个
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-10-26 10:11:14 | 显示全部楼层
泌阳 发表于 2021-10-25 22:56
我执行出来就是这个

抱歉兄弟,你可能对于质数有所误会还是说你不明白?
质数就是除了 1 和自己本身可以被除整以外,没有其他数可以被除整,这是基本啊。
你说:"执行出来就是这个"?你是指因数是这个,还是质数是这个?
题目要求 3 个条件:
最大:必须是最大
质数:必须是质数/素数
因数:必须是因数
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-10-28 14:45:42 | 显示全部楼层
傻眼貓咪 发表于 2021-10-26 10:11
抱歉兄弟,你可能对于质数有所误会还是说你不明白?
质数就是除了 1 和自己本身可以被除整以外,没有其 ...

他说的是不能执行,但是我执行出来就是这样的
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-10-28 14:57:32 | 显示全部楼层
本帖最后由 傻眼貓咪 于 2021-10-28 14:59 编辑
泌阳 发表于 2021-10-28 14:45
他说的是不能执行,但是我执行出来就是这样的


明白了,楼主代码有误
楼主代码执行速度超级慢主要是因为找因数所致,判断质数没有问题,查找因数方面代码需加强。
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-14 05:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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