实现素数类

 //本代码用Java实现了素数类,第一个功能就是对你输入的数字进行判断是否是素数,

//第二个功能就是你输入两个数(第二个数要大于第一个数),然后输出这两个数之间所有素数的个数

//以及这些素数之和。(初学者仅供参考)

import java.io.BufferedReader; import java.io.InputStreamReader; public class PrimeNumber { private int number; //构造函数 PrimeNumber() { number = inputValue(); } //输入你需要的值 public int inputValue() { int value = 0; try { BufferedReader in=new BufferedReader(new InputStreamReader(System.in)); String s=in.readLine(); value = Integer.parseInt(s); }catch (Exception e){} return value; } //判断是否为素数 public void isPrimeNumber(int number) { int signal = 0; if(number == 0 || number == 1)//0和1都不是素数 { signal =1; } else for(int i = 2; i <= number / 2; i++) { if(number % i == 0)//此数不是素数,跳出循环 { signal = 1; break; } } if(signal == 0) System.out.println("The number " + number + " is a prime number."); else System.out.println("The number " + number + " isn't a prime number."); } //查找两数之间所有素数的个数并对其进行求和 public void checkPrimeNumber(int firstNumber, int secondNumber) { int count = 0; int sum = 0; for(int counter = firstNumber; counter <= secondNumber; counter++) { int signal = 0;//标记是否是素数,不要将此行放到循环外,因为其要循环被赋值为1, if(counter != 0 && counter != 1) { for(int i = 2; i <= counter / 2; i++) if( counter % i == 0)//此数不是素数 { signal = 1; break; } if(signal == 0)//如果此数是素数 { //System.out.println(counter);//将找到的所有素数都输出来 count++; sum += counter; } } } System.out.println("There are " + count + " prime numbers between " + firstNumber + " and " + secondNumber); System.out.println("These sum of these prime numbers is " + sum); } //主函数 public static void main(String[] args) { int first = 0; int second = 0; System.out.println("Enter a positive integer:"); PrimeNumber primenumber = new PrimeNumber(); primenumber.isPrimeNumber(primenumber.number); System.out.println("/nNow check the prime numbers between " + "the fisrtNumber and secondNumber:"); System.out.println("Enter the first number:"); first = primenumber.inputValue(); System.out.println("Enter the second number:"); second = primenumber.inputValue(); primenumber.checkPrimeNumber(first, second); } }

你可能感兴趣的:(实现素数类)