计算素数除以数字的次数

我是初学者,我的代码找到了所有除以给定数字的素数,但我希望它也打印素数除以多少次。这是我的代码:


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;

        }

    }

}

希望你能理解我,谢谢!!


跃然一笑
浏览 180回答 2
2回答

波斯汪

你忘了增加计数器:System.out.println(prime&nbsp;+&nbsp;"&nbsp;"&nbsp;+(++count));

万千封印

您需要为每个有余数的除法增加计数器,0一旦余数不是,您必须退出循环0:public static void main(String[] args) {&nbsp; &nbsp; Scanner myScanner = new Scanner (System.in) ;&nbsp; &nbsp; int n = myScanner.nextInt();&nbsp; &nbsp; int prime = 2;&nbsp; &nbsp; int count = 0;&nbsp; &nbsp; while ( prime <= n ){&nbsp; &nbsp; &nbsp; &nbsp; if ( n % prime == 0 ) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; n /= prime;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; count++;&nbsp; &nbsp; &nbsp; &nbsp; } else&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; break;&nbsp; &nbsp; }&nbsp; &nbsp; System.out.println(prime + " " +count);}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java