首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【优秀题解】判断素数问题的题解与代码

【优秀题解】判断素数问题的题解与代码

作者头像
编程范 源代码公司
发布2018-04-18 11:30:37
7100
发布2018-04-18 11:30:37
举报

题目描述

写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的消息。

输入

一个数

输出

如果是素数输出prime 如果不是输出not prime

原题链接:C语言程序设计教程(第三版)课后习题8.3

http://www.dotcpp.com/oj/problem1029.html 建议PC端进入网站 1029题

解题思路: 用N从2开始除N前面的数。

如果有一个数能够被N整除,即余数为0,那么N就不是素数。

如果前面的数都不能被N整除,那么N就是素数。 思路有了,那就来实现,先定义一个flag,并初始化为1,然后弄一个for循环

如果N%i为0,把flag的值改为0,然后输出不是素数,退出循环。

如果完成了for循环,flag的值还是为1,那么N就是素数,输出是素数。

参考代码:

#include<iostream>
using namespace std;
int main()
{
    int i, N, flag=1;           //定义一个标记,并且初始化为1
    cin >> N;
    for (i = 2; i < N; i++)        //从2开始
    {
        if (N%i == 0)         //如果一个数能被N整除,那么N就不是素数
        { 
            flag = 0;       //flag为0
            cout << "not prime"; //输出not prime
            break;          //退出循环
        }
         
    }
    if (flag==1)               //如果flag为1,即N为素数
        cout << "prime";        //输出prime
    return 0;
}

以上出自我站asdlbj 大神的文章,欢迎大家点击原文进入大神博客评论交流!

也可以后台回复题号查看更多题解!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-01-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 编程范 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档