java求100以内的素数

java求100以内的素数找出 1 100 之间所有的素数 质数 第一种方法 如何判断 i 是否是素数 1 找出 i 的所有的约数 并累加它们的和 例如 i 5 它的约数有 1 和 5 约数和 6 i 11 它的约数有 1 和 11 约数和 12 i 18 它的约数有 1 2 3 6 9 18 约数和 39 2 如果某个 i 的约数和 i 1 那么 i 就是素数 classPrimeIn 100 1 publicstatic String args 找出 1 100 之间所有的素

找出1-100之间所有的素数(质数)

第一种方法:

如何判断i是否是素数 (1)找出i的所有的约数,并累加它们的和 例如: i=5,它的约数有1和5,约数和:6 i=11,它的约数有1和11,约数和:12 i=18,它的约数有1,2,3,6,9,18,约数和:39 (2)如果某个i的约数和 == i+1,那么i就是素数 
class PrimeIn_100_1{ 
    public static void main(String[] args){ 
    //找出1-100之间所有的素数(质数) //1-100之间 for(int i=1; i<=100; i++){ 
    //里面的代码会运行100遍 //每一遍i的值是不同的,i=1,2,3,4,5...100 //每一遍都要判断i是否是素数,如果是,就打印i //(1)找出i的所有的约数,并累加它们的和 int iSum = 0; for(int j=1; j<=i; j++){ 
    if(i%j==0){ 
    //j是i的约数 iSum += j; } } //(2)如果某个i的约数和 == i+1,那么i就是素数 if(iSum == i+1){ 
    System.out.println(i); } } } } 

第二种方法

统计[2,i-1]之间约数的个数

如何判断i是否是素数 (1)找出i在[2,i-1]之间的约数的个数 (2)如果这个个数是0,那么i就是素数 
class PrimeIn_100_2{ 
    public static void main(String[] args){ 
    //找出1-100之间所有的素数(质数) //1-100之间 for(int i=1; i<=100; i++){ 
    //里面的代码会运行100遍 //每一遍i的值是不同的,i=1,2,3,4,5...100 //每一遍都要判断i是否是素数,如果是,就打印i int iCount = 0; for(int j=2; j<i; j++){ 
    if(i%j==0){ 
   //j是i在[2,i-1]之间的约数 iCount++; } } //(2)如果这个个数是0,那么i就是素数 if(iCount == 0){ 
    System.out.println(i); } } } } 

第三种方法:

如何判断i是否是素数 (1)假设i是素数 boolean flag = true;//true代表素数 (2)找i不是素数的证据 如果在[2,i-1]之间只要有一个数能够把i整除了,说明i就不是素数 修改flag = false; (3)判断这个flag 
class PrimeIn_100_3{ 
    public static void main(String[] args){ 
    //找出1-100之间所有的素数(质数) //1-100之间 for(int i=1; i<=100; i++){ 
    //里面的代码会运行100遍 //每一遍i的值是不同的,i=1,2,3,4,5...100 //每一遍都要判断i是否是素数,如果是,就打印i //(1)假设i是素数 boolean flag = true;//true代表素数 //(2)找i不是素数的证据 for(int j=2; j<i; j++){ 
    if(i%j==0){ 
    flag = false;//找到一个就可以了 break; } } //(3)判断这个flag if(flag){ 
    System.out.println(i); } 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232631.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • linux重启网卡命令_linux网卡服务起不来怎么办

    linux重启网卡命令_linux网卡服务起不来怎么办修改了ip,如果没有重启网卡,一般是没有奏效的。Linux下网卡重启的命令为:/etc/init.d/networkrestart或者是/etc/init.d/networkingrestart或者重启网络服务:servicenetworkrestart在ubuntu下指定控制哪个网卡(其中eth0为网卡名):sudoifdowneth…

    2022年10月17日
    5
  • Git入门级常用命令(1)

    Git入门级常用命令(1)

    2021年5月23日
    138
  • JAVA–Map集合详解

    JAVA–Map集合详解特点:该集合存储键(key)值(value)对,一对一对往里存,而且要保证键(key)的唯一性。Map集合和Set集合很像,其实Set集合底层就是使用了Map集合。什么时候使用Map集合:当数据之间存在映射关系时,优先考虑Map集合。Map集合常用共有方法1.添加Vput(Kkey,Vvalue):将指定的值与此映射中的指定键关联…

    2022年5月27日
    41
  • SpringCloud-Hystrix(服务熔断、服务降级)

    SpringCloud-Hystrix(服务熔断、服务降级)SpringCloud-Hystrix(服务熔断,服务降级)Hystrix(豪猪)注明:此项目为本人学习尚硅谷老师的教学视频然后整理核心的配置文件,所有的项目均在以下地址下载。https://github.com/xwbGithub/microservicecloud下载本项目请参考microservicecloud-provider…

    2022年5月12日
    36
  • gcc常用命令_C语言编译过程几个步骤

    gcc常用命令_C语言编译过程几个步骤常用选项一个c文件要经过如下处理才能变成可执行文件Step1:预编译gcc-E-ohello.ihello.cStep2:编译gcc-S-ohello.shello.iStep3:汇编gcc-c-ohello.ohello.sStep4:连接gcc-ohellohello.o如果要一步到位gcc-ohellohello.c…

    2022年10月10日
    5
  • 数据类型转换的类是Convert_c++类型转换

    数据类型转换的类是Convert_c++类型转换C#数据类型和类型转换Convert.ToInt16与Convert.ToInt32区别版权声明:本文由 群燕小站 原创,转载请注明【转自:群燕小站(http://www.zqunyan.com);原文链接: http://www.zqunyan.com/79.html】取值的范围不同:int16:-32768到32767 int32:-2,147,483,648到2…

    2022年8月15日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号