gpt4 book ai didi

c++ - 对此很陌生。质数函数练习建议

转载 作者:行者123 更新时间:2023-11-28 00:36:13 25 4
gpt4 key购买 nike

如果这不是问这个问题的最佳地点,请将我带到最佳地点。在我最近写的一本书中,有一个练习要求在 main 中编写以测试从 2 到 20 的所有数字,并将结果打印在不同的行上。它要我使用质数函数并在 main 中使用 for 循环。我被卡住了,这就是我目前所拥有的。

(这是修改后的代码,我仍在努力让它工作。无法查明问题所在。)

#include <iostream>
#include <cmath>
using namespace std;

int prime(int x);

int main() {
int i;


for(i=2; i <= 22; i++)
cout << prime(i) << endl;

return 0;
}

int prime(int x) {
int i;

for(i=2; i <= sqrt((double)x); i++) {
if(x % i == 0)

return false ;
}
return true;
}

最佳答案

表达式i % xi的其余部分通过 xi < sqrt((double) x) , i % x始终等于 0

您必须将表达式更改为 x % i == 0检查是否x可以被 i 整除所以它不是素数。

您还必须添加 if返回 false仅当x % i == 0 .所以:

if (x % i == 0){
return false;
}

关于c++ - 对此很陌生。质数函数练习建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20851665/

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