我已经阅读了很多有关此主题的代码,但是大多数代码都会产生一直到输入数字都是素数的数字。但是,我需要仅检查给定输入数字是否为质数的代码。
这是我能够写的内容,但是不起作用:
void primenumber(int number) { if(number%2!=0) cout<<"Number is prime:"<<endl; else cout<<"number is NOt prime"<<endl; }
如果有人能给我有关如何使其正常工作的建议,我将不胜感激。
我对其进行了修改,以检查for循环中的所有数字。
void primenumber(int number) { for(int i=1; i<number; i++) { if(number%i!=0) cout<<"Number is prime:"<<endl; else cout<<"number is NOt prime"<<endl; } }
您需要做更多检查。目前,您只检查数字是否可被2整除。对2、3、4、5、6 …直到进行相同的操作number。提示:使用 循环 。
number
解决此问题后,请尝试寻找优化。提示:您只需要检查所有数字,直到数字的平方根