当前位置:   article > 正文

C++判断一个数是否是质数(极简版)_c++判断质数

c++判断质数

方法一:

  1. #include<iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. int n;
  6. cin>>n;
  7. int i;
  8. if(n<2) return 0;
  9. for(i=2;i<n;++i){
  10. if(n%i==0){
  11. cout<<"您输入的数不是质数!!" ;
  12. break; //跳出整个for循环,程序结束
  13. }
  14. else
  15. cout<<n<<"是质数"<<endl;
  16. break;
  17. }
  18. return 0;
  19. }

方法二:

  1. #include<iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. int n=0;
  6. cin>>n;
  7. int i;
  8. bool flag = true; //给flag标签设置布尔类型
  9. if(n == 2) flag = false;//如果输入的数字是“2”,那么将flag设置为false
  10. for(i=2;i<n;++i){
  11. if(n%i==0){ //如果被除了1和它本身以外的数整除,则不是质数,并跳出循环
  12. flag = false;
  13. break; //跳出整个for循环,程序结束
  14. }
  15. }
  16. if(flag)
  17. cout<<n<<"是质数"<<endl;
  18. else
  19. cout<<n<<"不是质数"<<endl;
  20. return 0;
  21. }

(谢谢各位小伙伴斧正,文末分析之前出现的错误)

质数也叫做素数,是指一个数除1和它本身外,没有其他的除数。

什么?让我说人话?

好嘞哥儿。

比如:2 , 3 , 5 , 7属于质数;

而4 ,6 , 8不属于质数,

因为

如果还不明白欢迎撩我~ 

原创不易,各位客官,点个不要钱的赞吧。

得嘞,您慢走~

以下是之前的代码,错误在于第一个if下面没有加引号,导致算法无法执行break语句

  1. #include<iostream>
  2. using namespace std;
  3. int main()
  4. {
  5. int n;
  6. cin>>n;
  7. int i;
  8. for(i=2;i<n;++i){
  9. if(n%i==0)
  10. cout<<"您输入的数不是质数!!" ;
  11. break; //跳出整个for循环,程序结束
  12. }
  13. if(n%i!=0)//此时的i是执行完for循环后的i,且没有执行break
  14. cout<<n<<"是质数"<<endl;
  15. return 0;
  16. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/75322
推荐阅读
相关标签
  

闽ICP备14008679号