Ⅰ java 判斷素數
public boolean isPrime(int n){
for(int i=2;i<=n/2;i++){
if(n%i == 0)
return false;
}
return true;
}
Ⅱ java判斷素數
樓主,首先你得知道,java是面向對象的語言。而c語言是面向過程的。
C語言你可以用scanf輸入n。但是java是面向對象的。你想從屏幕得到一個數。必須調用一個類的方法從而取得n。這些類就是輸入輸出流對象。如BufferedReader等。
建議你去看看java的輸入輸出流。
一下是代碼:
import java.io.*;
public class SystemInTest{
//判斷是否為質數,是的話返回true不是的話返回false
public static boolean isPrimeNumber(int n)
{
//2為質數
if(2==n)
{
return true;
}
for(int i=2;i<n;i++)
{
if(n%i==0)
return false;
}
return true;
}
public static void main(String [] args) throws NumberFormatException, IOException{
int n=0;
while(true){//為了方便測試,無限循環
System.out.println("請輸入一個大於1的整數:");
//以屏幕為輸入源 新建一個BufferedReader
BufferedReader bin=new BufferedReader(new InputStreamReader(System.in));
n=Integer.parseInt(bin.readLine()); //從屏幕得到的是字元串類型的,轉換為整數類型
if(isPrimeNumber(n))
{
System.out.println(n+":是一個質數.");
}else{
System.out.println(n+"不是一個質數.");
}
}
}
}
Ⅲ 利用Java判斷一個數是否是素數的演算法
//利用Java判斷一個數是否是素數的演算法
boolean f(int a){
boolean ean = true;
for(int i=2;i< Math.sqrt(a);i++){ //Math.sqrt 是調用Math類中的sqrt方法,求一個數的平方根
if(a%i==0){
ean = false;
break;
}
}
return ean;
}
Ⅳ 在java中如何判斷一個數是不是素數
importjava.util.Scanner;
publicclassDemo{
publicstaticvoidmain(String[]args){
System.out.println("請輸入一個正整數:");
Scannerscanner=newScanner(System.in);
intnumber=scanner.nextInt();
System.out.println("是否是素數:"+isPrime(number));
scanner.close();
}
staticbooleanisPrime(intnumber){
if(number<=1){
returnfalse;
}
for(inti=2;i<=Math.sqrt(number);i++){
if(number%i==0){
returnfalse;
}
}
returntrue;
}
}
Ⅳ java素數的判斷
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class T2 {
public static void main(String[] args) {
new T2().judge1();
new T2().judge2();
}
public void judge1(){
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try {
System.out.println("請輸入一個數字");
String str = br.readLine();
int a = Integer.parseInt(str);
if(isPrimes(a)){
System.out.println(a+" 是素數");
}else{
System.out.println(a+" 不是素數");
}
}catch(NumberFormatException e){
System.out.println("只能是數字");
judge1();
}catch (IOException e) {
System.out.println("讀取出錯了");
}
}
private void judge2() {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try {
System.out.println("請輸入兩個數用,號隔開(一個范圍)");
String str = br.readLine();
String [] s = str.split(",");
int a = Integer.parseInt(s[0]);
int b = Integer.parseInt(s[1]);
isPrimes2(a, b);
}catch(NumberFormatException e){
System.out.println("格式不正確");
judge2();
}catch (IOException e) {
System.out.println("讀取出錯了");
}
}
private void isPrimes2(int a, int b) {
System.out.println(a+"-"+b+"范圍的素數有:");
for(int i=a;i<=b;i++){
if(isPrimes(i)){
System.out.print(i+",");
}
}
}
public static boolean isPrimes(int n) {
for (int i = 2; i <= Math.sqrt(n); i++) {
if (n % i == 0) {
return false;
}
}
return true;
}
}
Ⅵ 用java編寫一個程序段,輸入一個自然數,判斷該數是否為素數.
使用java編寫判斷自然數是否為素數的方式是,使用scanner來接受用戶輸入的數值,使用素數的演算法,實例如下:
Scannersr=newScanner(System.in);
System.out.print("請輸入a的值:");
inta=sr.nextInt();
booleanis=true;
if(a<1)
{
System.out.println(a+"不是質數,因為他小於一");
}
else
{
List<Integer>list=newArrayList<Integer>();
for(inti=2;i<a;i++)
{
if(a%i!=1&&a%i!=a)
{
if(a%i==0){
is=false;
list.add(i);
}
}
}
if(is){
System.out.println("a是質數");
}else{
Stringyz="";
for(inti=0;i<list.size();i++)
{
if(yz=="")
{
yz=yz+list.get(i);
}else{
yz=yz+","+list.get(i);
}
}
System.out.println("a不是質數,因為他含有因子"+yz);
}
}
Ⅶ 用java判斷素數
import java.util.Scanner;
public class Test40013 {
public static void main(String args[]) {
int ri, repeat;
int i, m, n;
boolean flag;
Scanner in = new Scanner(System.in);
repeat = in.nextInt();
for (ri = 1; ri <= repeat; ri++) {
m = in.nextInt();
/*--------------------*/
flag = true;
if(m == 1){//1不是素數,要排除
ri--;
continue;
}
for (i = 2; i <= Math.sqrt(m); i++) {
if (m % i == 0) {
flag = false;
break;
}
}
//add ends
if (flag)
System.out.println("YES");
else
System.out.println("NO");
}
}
}