导航:首页 > 编程语言 > java判断是否为素数

java判断是否为素数

发布时间:2022-07-11 01:47:39

java 判断素数

public boolean isPrime(int n){
for(int i=2;i<=n/2;i++){
if(n%i == 0)
return false;
}
return true;
}

❷ java 判断是否是素数

判断number是否是素数有这么几种方法:
(1)用2至number-1之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。
(2)用2至number/2之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。
(3)用2至number的平方根之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。

这3种的方法的效率是逐渐提高的。下面列出了第3种方法的实现:
import java.util.Scanner;

public class Test2 {

public static void main(String[] args) {
int number; // 输入的数字

Scanner input = new Scanner(System.in);
System.out.println("请输入数字");
number = input.nextInt(); // 输入数字

if(isPrimeNumber(number)){
System.out.println(number + "是一个素数");
}
else{
System.out.println(number + "是一个非素数");
}
}

public static boolean isPrimeNumber(int num){
if(num < 2){
System.out.println("数据错误");
return false;
}

int k = (int)Math.sqrt(num); //num的平方根
int i;
for(i=2; i<=k; i++){ //依次用2..k之间的数去整除num,如果没有一个数能被整除,说明num是素数
if(num % i == 0){
break;
}
}
if(i > k){
return true;
}
return false;
}
}

如果对你的程序进行修改,也可这样:
public static void main(String[] args) {
int number;// 输入的数字
int j = 2;

Scanner input = new Scanner(System.in);
System.out.println("请输入数字");
number = input.nextInt();// 输入数字

for(j=2;j<number;j++){

if(number%j == 0) {

System.out.println("这不素数");
break;
}
}
if(j>=number)
System.out.println("这是素数");
}
请采纳答案,支持我一下。

❸ java程序中,如何设计程序,判断输入的数是否为素数

importjava.util.Scanner;
publicclasssushu{
publicstaticvoidmain(Stringargs[]){
Scannersc=newScanner(System.in);
System.out.print("请输入:");
intnum=sc.nextInt();
if(check(num))
{
System.out.print(""+num+"是素数");
}
else
{
System.out.print(""+num+"不是素数");
}
}
staticbooleancheck(intnum)
{
for(inti=2;i<=num/2;i++){
if(num%i==0)
{
returnfalse;
}
}
returntrue;
}
}

❹ java怎么判断素数

1、目前使用较有效的方法是试除法。用试除法判断一个自然数a是不是素数时,用各个素数从小到大依次去除a,如果到某一个素数正好整除,这个a就可以断定不是素数;如果不能整除,当不完全商又小于这个素数时,就不必再继续试除,可以断定a必然是素数。
2、素数又称质数。一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则称为合数。
3、素数是与合数相对立的两个概念,二者构成了数论当中最基础的定义之一。基于质数定义的基础之上而建立的问题有很多世界级的难题,如哥德巴赫猜想等。目前为止,人们未找到一个公式可求出所有素数,所以还没有固定的判断公式。
4、一般记住100以内的素数就可以了。有2、3、5、7、11、13、19、17、23、29、37、31、41、47、43、53、59、61、71、67、73、83、89、79、97,一共25个。

❺ java判断某个数是否为素数。(素数是一个大于1且只能被1和它本身整除的整数)

你说的素数就是质数吧?那你就直接判断它是不是合数不就好了,判断它是否有约数,如果没有,那就是素数了~如有帮助,请采纳,谢谢!

❻ java 判断是不是素数

判断number是否是素数有这么几种方法:
(1)用2至number-1之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。
(2)用2至number/2之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。
(3)用2至number的平方根之间的所有数去整除number,如果有一个能被整除,说明number是非素数;除非所有的数都不能被整除,才说明number是素数。

这3种的方法的效率是逐渐提高的。下面列出了第3种方法的实现:
import java.util.Scanner;

public class Test2 {

public static void main(String[] args) {
int number; // 输入的数字

Scanner input = new Scanner(System.in);
System.out.println("请输入数字");
number = input.nextInt(); // 输入数字

if(isPrimeNumber(number)){
System.out.println(number + "是一个素数");
}
else{
System.out.println(number + "是一个非素数");
}
}

public static boolean isPrimeNumber(int num){
if(num < 2){
System.out.println("数据错误");
return false;
}

int k = (int)Math.sqrt(num); //num的平方根
int i;
for(i=2; i<=k; i++){ //依次用2..k之间的数去整除num,如果没有一个数能被整除,说明num是素数
if(num % i == 0){
break;
}
}
if(i > k){
return true;
}
return false;
}
}

如果对你的程序进行修改,也可这样:
public static void main(String[] args) {
int number;// 输入的数字
int j = 2;

Scanner input = new Scanner(System.in);
System.out.println("请输入数字");
number = input.nextInt();// 输入数字

for(j=2;j<number;j++){

if(number%j == 0) {

System.out.println("这不素数");
break;
}
}
if(j>=number)
System.out.println("这是素数");
}

❼ 用 java 怎么判断一个数是否为质数

质数:

public static boolean isPrime(int N){if( N < 2 ) return false;

for( int i = 2 ; i*i <= N; i++){if( N % i == 0) return false;return true;}

❽ JAVA 输入一个数判断其是否是素数

public class panansushu {
public static void main(String args[]) {
int x, y, j;
Scanner i = new Scanner(System.in);
System.out.print("请输入一个数:");
y = i.nextInt();
j = (int) y / 2;
for (x = 2; x <= j; x++) {
if (y % x == 0) {
System.out.println("此数不为素数");
break;
}
}
if (x > j) {
System.out.println("此数为素数");
}
}
}

❾ 在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判断是否为素数相关的资料

热点内容
mdr软件解压和别人不一样 浏览:884
单片机串行通信有什么好处 浏览:320
游戏开发程序员书籍 浏览:843
pdf中图片修改 浏览:269
汇编编译后 浏览:474
php和java整合 浏览:829
js中执行php代码 浏览:440
国产单片机厂商 浏览:57
苹果手机怎么设置不更新app软件 浏览:284
转行当程序员如何 浏览:492
苹果id怎么验证app 浏览:864
查看手机命令 浏览:953
抖音反编译地址 浏览:226
如何加密软件oppoa5 浏览:233
java从入门到精通明日科技 浏览:96
拆解汽车解压视频 浏览:598
新版百度云解压缩 浏览:593
android上下拉刷新 浏览:880
centos可执行文件反编译 浏览:839
林清玄pdf 浏览:271