gpt4 book ai didi

c++ - C++ 中的威尔逊定理,输出不正确?

转载 作者:行者123 更新时间:2023-11-28 01:38:03 25 4
gpt4 key购买 nike

我编写了一个函数,该函数应使用 Wilson 定理检查整数是否为质数。但是它输出 5 不是质数,这显然是。我想请问这是为什么?

#include <iostream>
using namespace std;
long int counter = 1;
bool primeWilson(int n)
{
for(int i=1; i<n; i++)
{
counter*=i;
}
if(n%(counter+1)!=0)
{
return true;
}
return false;
}

最佳答案

您正在检查实现 Wilson 的错误方法。例如:

25能被5整除
但是
5 不能被 25 整除

n%(counter+1)

->

(counter+1)%n

关于c++ - C++ 中的威尔逊定理,输出不正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48438284/

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