Java 如果一个数字不是质数,那么我们必须打印出它可以被什么整除的数字
在这里,我需要输出,如果它不是一个素数,那么我们必须输出它可以被什么数整除,但我不能得到它打印出来。我需要这方面的帮助。有人能给我一些关于如何得到可除数的建议吗?只要把你的语句从Java 如果一个数字不是质数,那么我们必须打印出它可以被什么整除的数字,java,Java,在这里,我需要输出,如果它不是一个素数,那么我们必须输出它可以被什么数整除,但我不能得到它打印出来。我需要这方面的帮助。有人能给我一些关于如何得到可除数的建议吗?只要把你的语句从count改为num1,因为你已经在do循环中确定num可以被num1除 import java.util.Scanner; public class exam2015q2 { public static void main (String args[]) { Scanner scan =
count
改为num1
,因为你已经在do
循环中确定num
可以被num1
除
import java.util.Scanner;
public class exam2015q2
{
public static void main (String args[])
{
Scanner scan = new Scanner(System.in);
System.out.println("Eneter a number");
int num = scan.nextInt();
int num1 = num-1;
int count = 0;
if(num % 2 == 0)
{
count++;
System.out.println(+num+ " Is an even number");
}
else
{
System.out.println(num+" Is an odd number");
}
boolean isPrime = true;
do {
if(num % num1 == 0)
{
isPrime = false;
break;
}
num1--;
}
while(num1 >= 2);
if(isPrime == true)
{
System.out.println(num +" is a prime number as it is only divisible by 1 and " +num);
}
else
{
System.out.println(num +" is NOT a prime number.It is divisible by " +count);
}
}
}
public static void main (String args[])
{
Scanner scan = new Scanner(System.in);
System.out.println("Eneter a number");
int divisibleBy;
int num = scan.nextInt();
int num1 = num-1;
int count=0;
if(num%2==0)
{
count++;
System.out.println(+num+ " Is an even number");
}
else
{
System.out.println(num+" Is an odd number");
}
boolean isPrime = true;
do{
if(num%num1==0)
{
divisibleBy = num1;
isPrime = false;
break;
}
num1--;
}
while(num1>=2);
if(isPrime == true)
{
System.out.println(num +" is a prime number as it is only divisible by 1 and " +num);
}
else
{
System.out.println(num +" is NOT a prime number.It is divisible by " +divisibleBy);
}
}
如图所示,你可以在你的程序中完全去掉
count
。而且很酷,兄弟,这不是一个howrk问题,顺便说一句,这是一个考试问题,永远不要使用代码(isPrime==true)。你使用布尔的原因是为了避免比较,因为比较已经完成了。天哪,不,我想知道如果它不是质数,你如何打印出它可以被什么数整除
else{
System.out.println(num +" is NOT a prime number.It is divisible by " +num1);
}