gpt4 book ai didi

c - 欧拉计划挑战 3

转载 作者:行者123 更新时间:2023-11-30 17:44:54 25 4
gpt4 key购买 nike

我的代码有问题,但我不知道是什么问题。 GCC 编译它时没有任何警告,但运行时不会输出任何内容。

我刚学c(这其实是欧拉第3题,求600851475143的最大素因数)。

这段代码有什么问题?

#include <stdio.h>

int primeCheck(unsigned long input);

int main(){
//goal: find largest prime factor of 600851475143
unsigned long goal = 600851475143;
for(unsigned long i = 600851475142; i > 0; i--){
if(primeCheck(i) == 1 && goal%i == 0)
printf("\n%lu\n\n", i);
}

}

int primeCheck(unsigned long input){
for(unsigned long i = 2; i < input; i++){
if(input%i == 0)
return 0;
}
return 1;
}

最佳答案

您的程序很可能执行时间太长。正如杰瑞暗示的那样,尝试较小的数字来验证您的程序。

您可能想看看这篇文章: Prime factorization for big numbers 更好的算法。

关于c - 欧拉计划挑战 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19802685/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com