700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Java正整数分解质因数

Java正整数分解质因数

时间:2018-08-03 17:47:07

相关推荐

Java正整数分解质因数

leetcode-2

Java正整数分解质因数

1、题目:

将一个正整数分解质因数。例如:输入 90,打印出 90=233*5。

2、题目解析:

先将数m从2开始整除,如果能被2整除,就将m等于m除以2–> m = m % 2;然后将m在从2开始整除,如果不成立,从就从3开始,以此类推。

//采用while循环进行循环分解while(nums % 2 == 0){//这个if语句使用输出 2*3*3*5 格式if (nums == i) {// 当i是最后一个数字时,就无需输出 *System.out.print(i);}else {//我们这里采用格式打印System.out.printf("%d*",i);}//nums能够被2整除,所以将nums等于/2的那个数值, 利用的是辗转相除法nums = nums / 2;}

这只是除数为2的循环,那3,4,5,6, 所以这里就需要外层for循环,进行除数的不断增加

//外层采用for,判断条件是 i <= nums 等于是因为,被除数可以刚好为ifor (int i = 2; i <= nums; i++) {//while(nums % 2 == 0) 循环}

3、代码

Scanner sc = new Scanner(System.in);System.out.print("请输入一个正整数:");int nums = sc.nextInt();for (int i = 2; i <= nums; i++) {while (nums % i == 0) {if (nums == i ) {System.out.print(i);}else {System.out.printf("%d*",i);}nums = nums / i;}}

4、总结

首先要找出规律,如何分解质因数,先判断一个数如何除,脑子里面有思路,求出while循环,其次再进行格式打印

A journey of a thousand miles begins with a single step

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。