Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用布尔值的素数查找程序 我试图编写一个C++程序,它给出一个包含随机整数的数据文件,将每个整数标识为素数或素数,并计算整数。以下是我到目前为止的情况: #include <iostream> using namespace std; int main() { int number; //number to be tested int count = 0; //count of integers in file cin >> number; while (cin) { bool prime = true; if (number <= 0) { prime = false; } else { for (int i=2; i<number; i++) if (number % i == 0) { prime = false; break; } } if (prime = true) cout << number << " is a prime number." << endl; if (prime = false) cout << number << " is not a prime number." << endl; cin >> number; count++; } cout << "The file contains " << count << " integers" << endl; return 0; } #包括 使用名称空间std; int main() { int number;//要测试的数字 int count=0;//文件中整数的计数 cin>>数量; while(cin) { 布尔素数=真; if(number_C++_Boolean - Fatal编程技术网 >数量; while(cin) { 布尔素数=真; if(number,c++,boolean,C++,Boolean" /> >数量; while(cin) { 布尔素数=真; if(number,c++,boolean,C++,Boolean" />

使用布尔值的素数查找程序 我试图编写一个C++程序,它给出一个包含随机整数的数据文件,将每个整数标识为素数或素数,并计算整数。以下是我到目前为止的情况: #include <iostream> using namespace std; int main() { int number; //number to be tested int count = 0; //count of integers in file cin >> number; while (cin) { bool prime = true; if (number <= 0) { prime = false; } else { for (int i=2; i<number; i++) if (number % i == 0) { prime = false; break; } } if (prime = true) cout << number << " is a prime number." << endl; if (prime = false) cout << number << " is not a prime number." << endl; cin >> number; count++; } cout << "The file contains " << count << " integers" << endl; return 0; } #包括 使用名称空间std; int main() { int number;//要测试的数字 int count=0;//文件中整数的计数 cin>>数量; while(cin) { 布尔素数=真; if(number

使用布尔值的素数查找程序 我试图编写一个C++程序,它给出一个包含随机整数的数据文件,将每个整数标识为素数或素数,并计算整数。以下是我到目前为止的情况: #include <iostream> using namespace std; int main() { int number; //number to be tested int count = 0; //count of integers in file cin >> number; while (cin) { bool prime = true; if (number <= 0) { prime = false; } else { for (int i=2; i<number; i++) if (number % i == 0) { prime = false; break; } } if (prime = true) cout << number << " is a prime number." << endl; if (prime = false) cout << number << " is not a prime number." << endl; cin >> number; count++; } cout << "The file contains " << count << " integers" << endl; return 0; } #包括 使用名称空间std; int main() { int number;//要测试的数字 int count=0;//文件中整数的计数 cin>>数量; while(cin) { 布尔素数=真; if(number,c++,boolean,C++,Boolean,检查prime是否为true或false时,您使用的是赋值运算符=,而不是相等比较运算符=。(对于循环,还应使用大括号表示。) 请注意,您可以检查系数,直到prime/2(或sqrt(prime),请参见下文),因为任何大于一半的数字都不能成为它的系数!此行: if (prime = true) cout << number << " is a prime number." << endl; if(prime=true) 我想说的是,如果你尝

检查
prime
是否为true或false时,您使用的是赋值运算符
=
,而不是相等比较运算符
=
。(对于
循环,还应使用大括号表示
。)

请注意,您可以检查系数,直到
prime/2
(或
sqrt(prime)
,请参见下文),因为任何大于一半的数字都不能成为它的系数!

此行:

if (prime = true)
        cout << number << " is a prime number." << endl;
if(prime=true)

我想说的是,如果你尝试所有奇数加上数字2,看看它们中是否有一个能除“number”,你可以停在sqrt(number)处,因为如果到那时为止你还没有找到任何除数,你就找不到它。16/8不会被测试,因为16/2会更早被测试,它会停止搜索。谢谢大家的回复,现在它可以工作了!只是一些可以加快检查一个数是否为素数的东西,没有一个所有素数都小于它的列表。你可以检查
number%i
对于
1I,我的意思是,平方根应该向上舍入(而不是向下舍入),因为必须检查的最大数字是向下舍入的平方根
if (true = prime)
        cout << number << " is a prime number." << endl;