文章目录

  • 前言
  • 一、思路分析
  • 二、代码实现
    • 1.判断一个数是否为素数
    • 2.输出指定范围内的所有素数
  • 总结

前言

判断一个数字是否为素数是我们初学编程中常见的问题之一,利用简单的循环结构和数学知识即可轻易判断一个数字是否为素数,在此基础上,我们可以将问题扩展为找出一定范围内的所有素数,并按规律输出,思路清晰,方法简单,保证你一学就会!

一、思路分析

根据基本的数学只是我们可以知道,如果一个数 n 是合数,那么一定至少存在分别 f1 < sqrt(n) < f2,使得 f1 与 f2 的乘积为 n ,因此,我们只需用从2到 sqrt(n) 的数轮流除 n ,若皆不能整除,则 n 为素数。

思路明确,接下来将其转化为代码。

二、代码实现

1.判断一个数是否为素数

代码如下(示例):

/* Alkaid#3529 */#include<iostream>
using namespace std;/* 判断一个数字是否为素数 */
bool determining_prime_number(int n); // 函数声明放在开头是一个良好的习惯int main()
{// 读入需要判断的数字 n int n = 0;cout << "请输入需要判断的数字 n :\n";cout << "n = ";cin >> n;// 调用函数判断 n 是否为素数,并输出结果if (determining_prime_number(n))cout << endl << n << " 是素数\n";elsecout << endl << n << " 不是素数\n";return 0;
}bool determining_prime_number(int n)
{// 从 2 到 sqrt(n) ,分别除 n ,若整除,则返回 0 ,为假for (int i = 2; i <= sqrt(n); i++){if (n % i == 0)return 0;}// 否则,返回 1 ,为真return 1;
}

经过测试,我们可以看到判断结果均正确:


这样,我们完成了对单个数字是否为素数的判断,那么,我们能否改进程序,从而完成对一定范围内所有数字的判断呢?

2.输出指定范围内的所有素数

我们只需添加一个循环,在循环中依次判断指定范围内的每个数字,由用户来设定循环的上下限,即可实现找出用户指定范围内的全部素数。

代码如下(示例):

/* Alkaid#3529 */#include<iostream>
using namespace std;/* 判断一个数字是否为素数 */
bool determining_prime_number(int n);int main()
{// 读入范围的上下限int a = 0, b = 0;cout << "请输入需要判断的范围 ( a-b ) :\n";cout << "a = ";cin >> a;cout << "\nb = ";cin >> b;cout << "\nFrom " << a << " to " << b << " 素数有:\n\n";int num = 0;// 循环判断范围内的每个数字,如果为素数,输出for (int i = a; i < b + 1; i++){if (determining_prime_number(i)){// 记录素数的个数num++;// 输出素数cout << i << "  ";// 每十个数字为一行if (num % 10 == 0)cout << endl;}}cout << "\n\n共计 " << num << " 个\n";return 0;
}bool determining_prime_number(int n)
{// 从 2 到 sqrt(n) ,分别除 n ,若整除,则返回 0 ,为假for (int i = 2; i <= sqrt(n); i++){if (n % i == 0)return 0;}// 否则,返回 1 ,为真return 1;
}

这样,我们便实现了对指定范围内所有数字的判断:


总结

判断素数是初学编程时常见的问题之一,希望本文对初学者有一定帮助,瑕疵之处也欢迎大家指正补充。后续还会稳定更新更多的学习内容,感兴趣的话不妨点个关注吧!

最后我是Alkaid#3529,期待你的关注!

判断一个数字是否为素数 C++实现相关推荐

  1. python编写一个函数判断一个数是否为素数是则返回yes_编写函数isPrime,判断一个数字是否为素数,是则返回字符串 YES ,否则返回字符串 NO 。_学小易找答案...

    [填空题]语句 x = (3,) 执行后x的值为_______________. [填空题]字典对象的___________方法可以获取指定"键"对应的"值", ...

  2. java 判断一个数字是否是素数。 素数,质数, 只能被1和自身整除的数。

    import java.util.Scanner;/*** * 判断一个数字是否是素数. 素数,质数, 只能被1和自身整除的数.* **/ public class Demo0{public stat ...

  3. Java判断一个数字是否是素数

    题目要求 从键盘输入一个数字,判断它是否为素数. 一共有三种方法供大家参考 实现代码 1.最基础的求素数的方法:如果一个数字是素数,那么就只能整除1和自己本身,即判断1到该数字本身是否能被整除 imp ...

  4. JavaScript判断一个数字是否为素数

    素数的概念:只能被 1 和 其本身 整除的数 <script>function getNumber() {var num = parseInt(prompt('请输入你需要判断是否为素数的 ...

  5. python任意输入一个正整数、判断该数是否为素数_Python编程判断一个正整数是否为素数的方法,python素数...

    Python编程判断一个正整数是否为素数的方法,python素数 本文实例讲述了Python编程判断一个正整数是否为素数的方法.分享给大家供大家参考,具体如下: import string impor ...

  6. python任意输入一个正整数、判断该数是否为素数_Python编程判断一个正整数是否为素数的方法...

    本文实例讲述了Python编程判断一个正整数是否为素数的方法.分享给大家供大家参考,具体如下: import string import math #判断是否素数的函数 def isPrime(n): ...

  7. python输入一个自然数、判断是否为素数_Python编程判断一个正整数是否为素数的示例代码分享...

    这篇文章主要介绍了Python编程判断一个正整数是否为素数的方法,涉及Python数学运算相关操作技巧,需要的朋友可以参考下 本文实例讲述了Python编程判断一个正整数是否为素数的方法.分享给大家供 ...

  8. python输入一个自然数、判断是否为素数_Python编程判断一个正整数是否为素数的方法...

    本文实例讲述了Python编程判断一个正整数是否为素数的方法.分享给大家供大家参考,具体如下: import string import math #判断是否素数的函数 def isPrime(n): ...

  9. python怎么判断一个数是不是正整数_Python如何判断一个正整数是否是素数?

    素数(Prime Number),又称质数,一个大于1的自然数,除了1和它自身外,不能整除其他自然数的数叫做质数:否则,称为合数(Composite Number).1既不是素数,也不是合数. 如2. ...

  10. php对手时间戳判断,PHP 中判断一个数字是否是Unix 时间戳

    PHP 中判断一个数字是否是Unix 时间戳 在php中一个有效的时间是从 1970-01-01 07:00:00 – 2038-01-19 03:14:07. 首先一个时间戳中肯定没有小数点. 将 ...

最新文章

  1. linux查找nginx目录,Linux下查看nginx安装目录
  2. 屠龙之路_战胜View对DataBase猛烈进攻_ThirdDay
  3. php smarty fetch,fetch()
  4. mysql1526错误_mysql 分区 1526错误
  5. e7用什么主板_主板上这么多扩展插槽,都是干什么用的,看了不后悔
  6. linux文件编程(2)——系统文件描述符、动静态文件、块设备介绍
  7. python练习_如何使用Logzero在Python中练习记录
  8. 横空出世,席卷互联网--评微软等公司数据结构和算法面试100题
  9. Python中的生成器与迭代器
  10. @vail 判断某字段在范围内_怎么判断一台二次元影像测量仪的可靠性?
  11. C语言-apache mod(模块开发)-采用apxs开发实战(centos7.2 linux篇)
  12. 基于JAVA+SpringMVC+Mybatis+MYSQL的医院管理系统
  13. shell实战之日志脱敏
  14. docker搭建sonar服务
  15. Android学习系列(7)--App轮询服务器消息
  16. 在Java中使用Jedis的测试案例
  17. 嵌入式linux地图,基于嵌入式Linux的MapInfo格式地图显示
  18. moodle 中文文件名无法打开和下载问题
  19. 考研阅读计划23——1991 Text3《环境|人口增长引起的危机》
  20. 使用JavaScript进行iframe的DOM操作

热门文章

  1. javascript特效大全
  2. WidsMob ImageConvert for Mac(图片格式转换器)
  3. 端口扫描工具Zenmap超详细使用方法+使用案例(windows)
  4. 搭建Ubuntu下c/c++编译环境
  5. Linux服务器查看任务计划,Linux的任务计划
  6. 优盘中发现计算机病毒怎么办,u盘中毒了文件夹被病毒隐藏怎么办?
  7. 【转载】扫描渗透等工具介绍
  8. iOS开发最常用三方库集合Swift版(三方库、插件、博客等等)
  9. 关于数据清洗的步骤及方法的理解
  10. 数据结构与算法之栈的实现及逆波兰计算器简易版