public class PrimeFactor {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("Enter the number:");
int num=input.nextInt();
int factors;
for(int i=1;i<num;i++)
{
factors=num%i;
if(factors==0 && isPrime(factors))
System.out.println(i+"");
}
input.close();
}
public static boolean isPrime(int n)
{
boolean prime=true;
for(int i=2;i<n;i++)
{
if(n%i==0)
{
prime=false;
break;
}
}
return prime;
}
}
Я написал этот код, чтобы найти простые множители числа. Логика, которую я применил, кажется мне прекрасной, но результат идет не так.java-программа для поиска простых множителей числа
Каким должен быть выход? Что это на самом деле? Что обнаружила ваша отладка? Почему вы так логично писали логику? Что он делает? Почему ты так думаешь? –
Выход должен быть основным фактором, но он показывает все факторы, кроме 1 и самого себя. Нет причин, почему я написал логику таким образом, это только первое, что пришло мне в голову. @SotiriosDelimanolis – Tannia