JAVA:输出1-100之间的所有质数,写出一种可用算法步骤,开头已给出

public class Getkey {
public int[] getPrime(){
——————(代码)————
}
}
尽量优化算法,我的想法是除判断是否为质数以外,循环避开所有偶数,但是不知道这怎么实现

从1到50循环
然后让每一个数循环除23456789
如果这8次除的结果都不是整数或者=1,那么为质数
如果这8次除的结果有整数且不等于1,那么为合数,跳出此次循环
进行下一循环
算法不是最好,不过简单易懂
希望有帮助
温馨提示:内容为网友见解,仅供参考
第1个回答  2018-07-07
//既然返回的是int数组那我就返回数组吧,其实用集合更好
//不过既是质数又是偶数的,只有2吧

public static void main(String[] args) {
  int []a = getPrime();
 }
 
 private static int[] getPrime() {
  
  int []prime = new int[100];
  int index = 0;      //记录数组下标
  for (int i = 2; i <= 100; i++) {
   int temp = 0;     //记录能被整除的次数
   for (int j = 2; j < i; j++) {
    if (i%j==0) {    //能被第三个数整除,不是素数
     temp++;     //能被整除次数+1
    }
   }
   if ((temp==0) && (i%2!=0)) { //没有能被整除的第三个数(素数)  并且不能被2整除(不是偶数)
    prime[index] = i;
    index++;     //下标+1
   }
  }
  
  for (int i = 0; i < prime.length; i++) {
   System.out.println(prime[i]);
  }
  
  return prime;
 }

第2个回答  2018-07-07
月夜(刘方平)

JAVA:输出1-100之间的所有质数,写出一种可用算法步骤,开头已给出
从1到50循环 然后让每一个数循环除23456789 如果这8次除的结果都不是整数或者=1,那么为质数 如果这8次除的结果有整数且不等于1,那么为合数,跳出此次循环 进行下一循环 算法不是最好,不过简单易懂 希望有帮助

什么是质数
质数又称为素数,是一个大于1的自然数,除了1和它自身外,不能被其他自然数整除的数叫做质数;否则称为合数。

JAVA是什么意思?
(1)Easy:Java的语法比C++的相对简单,另一个方面就是Java能使软件在很小的机器上运行,基础解释其和类库的支持的大小约为40kb,增加基本的标准库和线程支持的内存需要增加125kb。 (2)分布式:Java带有很强大的TCP\/IP协议族的例程库,Java应用程序能够通过URL来穿过网络来访问远程对象,由于servlet机制的出现,使Java编程...

md5 算法程序+详细注释,高分求教!
有两种方法得到字典,一种是日常搜集的用做密码的字符串表,另一种是用排列组合方法生成的,先用md5程序计算出这些字典项的md5值,然后 再用目标的md5值在这个字典中检索。我们假设密码的最大长度为8位字节(8 bytes),同时密码只能是字母和数字,共26+26+10=62个字符,排列组合出的字典的项数则是p(62,1)+p(62,...

在新建虚拟机时出现问题?
应用程序如果出现不可恢复的错误或是内存泄露,就会自动触发 Javacore 的生成。 使用方法 1.jinfo pid:输出当前 jvm 进程的全部参数和系统属性 2.jinfo -flag name pid:输出对应名称的参数使用该命令,可以查看指定的 jvm 参数的值。如:查看当前 jvm 进程是否开启打印 GC 日志。 3.jinfo -flag [+|-]name pid...

编写程序实现用一元人民币换成一分、两分、五分的硬币共50枚.。_百...
{\/** * @param args *\/ public static void main(String[] args) { \/\/ TODO Auto-generated method stub for(int i = 0;i for(int j = 0;j for(int z = 0;z if((1 * i) + (2 * j) + (5 * z) == 100){ System.out.println("第" + i + "种情况: "+ "一分...

JAVA中文是什么意思
JAVA中文意思是:计算机编程语言。Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。任职于...

...写封信推荐景点及出行方式。100字左右。开头已给出。
Our schedule for today is to visit the famous scenic spot --- the XXX, which is the historic architecture in the city of XXX. As the origin of XXX, the XXX has become the world cultural heritage. I’m quite sure that you will be impressed by the beauty of the royal ...

一个有效的行为必须通过某种反馈过程来取得信息,从而了解目的是否已经达 ...
制定沟通计划的过程包括确认所有的利益相关人、确定他们需要获得的项目信息、集思广益分发信息的方式以及在充分利用资源的情况下与尽可能多的项目利益相关者进行沟通。根据听众的情况,交流一般采取下面三种方式中的一种:--强制性的:包括项目状态报告、项目预算报告以及已批准的需求。 --参考性的: 给相关人员提供进一步...

如何快速地编写和运行一个属于自己的MapReduce例子程序
正式开始 1. 首先登入hadoop 集群里面的一个节点, 创建一个java源文件, 偷懒起见, 基本盗用官方的word count (因为本文的目的是教会你如何快编写和运行一个MapReduce程序, 而不是如何写好一个功能齐全的MapReduce程序)内容如下:import java.io.IOException;import java.util.StringTokenizer;import ...

相似回答