找素数(质数)

4 篇文章 0 订阅

 /*  列子

 编写for循环找出1~100中所有的素数

  素数 :又被称为质数,能够被1和自身整除,不能被其它数字整除的数字称为素数.

 */

 //先编写程序,验证7和11两个数字是否为素数(先有个大体的思路和找出规律)

/*

               实现思路1

                     7  /  1 【不需要】

                     7  /  2

                     7  /  3

                     7  /  4

                     7  /  5

                     7  /  6

                     7  /  7 【不需要】   

 实现思路2

                     11  /  1 【不需要】

                     11  /  2

                     11  /  3

                     11  /  4

                     11  /  5

                     11  /  6

                     11  /  7

                     11  /  8 

11  /  9 

11  /  10 

11  /  11【不需要】

*因为每个数都可以被一整除和自身整除,所以一与自身都不需要除以(无用功)

*所以验证7是否为素数,则可以从2开始除

*结果是:7和11是素数

*结论是:每个数的除数都从2开始

*得出大体结论则开始验证7和11是否为素数

bool issushu = true; //默认将i看做一个素数

  int i = 7;

      for (int j = 2; j < i; j++) {

                //j是什么 :2  3  4  5  6

                if (i % j == 0) {

                    //非素数

                    issushu = false;

                    //已经找到i是非素数,跳出循环

                    break;

                }

     }

 Console.WriteLine(issushu?i+"是素数":i+"不是素数");

 */

运行结果为:7是素数       同理可把i改为11,得11为素数

则基本的如何得出数字是否为素数已经知道,那么只需要把i为7、11的范围用for循环扩大为所需要的范围即可得出一个范围内的数字是素数还是非素数

列如1到100内的素数和非素数

            for (int i = 0; i < 100; i++){//将i   for循环  

             bool issushu = true; //默认将i看做一个素数

                for (int j = 2; j < i; j++) {

                    //j是什么 :2  3  4  5  6

                    if (i % j == 0)

                    {

                        //非素数

                        issushu = false;

                        //已经找到i是非素数,跳出循环

                        break;

                    }

                }

                Console.WriteLine(issushu ? i + "是素数" : i + "不是素数");

            }

运行结果为:(结果过多不一一举例出来,可自行运行)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值