首页 > 技术文章 > 素数输出

xcl666 2018-10-16 18:58 原文

思想其实很简单,首先我忘记啥是素数了,第一步先找到素数是什么,第二步如何判断一个数为素数,第三步就是用一个循环然后找出两个数之间的素数,最后一步使用一个数组把这些素数储存起来,然后取前十个和后十个。

源代码

 

package Prime;

 

//肖成龙 20173591

 

//2018 10 14

 

import java.util.Scanner;

 

 

 

public class Prime {

 

public static void IsPrime(int x){//判断是否为素数

 

if(x==1)System.out.println(x+"不是素数");

 

else {

 

for(int i=x-1;i>=1;i--)

 

{

 

if(1==i) {System.out.println(x+"是素数");

 

break;}

 

if(x%i==0) {//System.out.println(x+"不是素数");

 

break;}

 

    }

 

}

 

}

 

public static void TwoPrime(int x1,int x2)

 

{

 

if(x1>x2) {//始终让前一个数是小的,便于后面的比较

 

int temp;

 

temp=x1;

 

x1=x2;

 

x2=temp;

 

}

 

for(int i=x1;i<=x2;i++)

 

{

 

IsPrime(i);

 

}

 

}

 

public static void ThreePrime(int x1,int x2)

 

{

 

if(x1>x2) {//始终让前一个数是小的,便于后面的比较

 

int temp;

 

temp=x1;

 

x1=x2;

 

x2=temp;

 

}

 

int length = 0;//记录素数总数

 

int [] numbers;//用数组存那些素数

 

for(int i=x1;i<=x2;i++)

 

{

 

for(int j=i-1;j>=1;j--)

 

{

 

if(1==j)

 

{

 

 

 

length++;

 

 

 

break;

 

}

 

if(i%j==0)

 

break;

 

    }

 

 

 

}

 

int t = 0;//用来存当前输出素数的个数

 

 

 

}

 

public static void main(String []args){

 

System.out.println("请输入一个数:");

 

Scanner scanner=new Scanner(System.in);

 

int x=scanner.nextInt();

 

IsPrime(x);

 

System.out.println("请输入两个数");

 

int x1=scanner.nextInt();

 

int x2=scanner.nextInt();

 

TwoPrime(x1,x2);

 

 

 

}

 

}

 

推荐阅读