посчитать, сколько раз простое число делит число - PullRequest
0 голосов
/ 11 ноября 2018

Я новичок, мой код находит все простые числа, которые делят данное число, но я хочу, чтобы он также выводил, сколько раз делит простое число. это мой код:

public static void main(){
    Scanner myScanner = new Scanner (System.in) ;
    int n = myScanner.nextInt();
    int prime = 2 ;
    int count = 0 ;
    while ( prime <= n ){
        if ( n%prime == 0 ) {
            n = n/prime ;
            System.out.println(prime + " " +count);
        }
        if ( n%prime !=0 ){
            prime = prime + 1;
        }
    }
}

Надеюсь, ты меня поймешь, спасибо !!

Ответы [ 2 ]

0 голосов
/ 11 ноября 2018

Вам нужно увеличить счетчик для каждого деления, которое имеет остаток 0и вы должны выйти из цикла, если остаток не равен 0:

public static void main(String[] args) {
    Scanner myScanner = new Scanner (System.in) ;
    int n = myScanner.nextInt();
    int prime = 2;
    int count = 0;

    while ( prime <= n ){
        if ( n % prime == 0 ) {
            n /= prime;
            count++;
        } else
            break;
    }

    System.out.println(prime + " " +count);
}
0 голосов
/ 11 ноября 2018

Вы забыли увеличить счетчик:

System.out.println(prime + " " +(++count));
...