java 随机产生一个50,100之间的整数并判断是否为素数,谢谢了

如题所述

import java.util.Random;

public class Test {

public static void main(String[] args) {

Random rand = new Random();

int value = 0;
do{
value = rand.nextInt(100+1);产生0~100之间数字
}while(value < 50);//如果低于50,继续,直到产生的数字大于等于50

boolean isPrimeNumber = validatePrimeNum(value);

if(isPrimeNumber){
System.out.println("随机数" + value + "是一个质数!");
}else{
System.out.println("随机数" + value + "不是一个质数!");
}

}

private static boolean validatePrimeNum(int value) {//判断随机数的方法

for(int i = 2; i <= Math.sqrt(value); i++){
if(value % i == 0){
return false;
}
}

return true;
}

}
-----------测试结果1
随机数70不是一个质数!
-----------测试结果2
随机数97是一个质数!
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-04-21
boolean bool = true;
for(int i=50;i<101;i++){
bool= true;
int temp = Math.round(i);
for(int j=2;j<temp;j++){
if(temp%j==0){
bool = false;
}
}
if(bool==true){
System.out.println(temp+"是素数");
}else{
System.out.println(temp+"不是素数");
}本回答被网友采纳
第2个回答  2011-03-13
public class Demo{
public void isSingle(int tmp){
//因为要判断的数的最小公因子小于等于该数的平方根
for(int i = 2 ; Math.sqrt(tmp) >=i ; i ++ ){ if(tmp%i==0){
System.out.print("该数:" + tmp +"不是质数!");
}
}
System.out.print("该数:" + tmp +"是质数!");
}
public static void main(String[] args){
int temp;
while(temp>=50 && temp <= 100){
temp = (int)(Matn.random()*100 + 1);
}
isSingle(temp);
}
}