将一个正整数分解质因数。例如:输入60;打印出2*3*5*2
算法实现构思:
1、用Scanner实现输入一个正整数n
2、用一个for循环遍历一个从 k=2开始查找到k<=n的数
3、如果 n%k==0的时候,输出k的值
4、然后把n的值递归一下,即 n=n/k
5、这个时候要把for循环重新执行,即再定义k=2
下面是实现代码:
下面是运行结果
上面是后来整理的构思以及代码实现,一开始拿到这个题目,就立马去做了,可是马上掉进了各种各样的坑,我觉得以后做算法题先把做题思路想好,从部分到整体,不然一道简单的算法题就要耗掉很多时间。
参考资料
CSDN.CSDN[引用时间2018-1-5]
...正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
import java.util.*;public class ProOne { \/\/题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。\/\/程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:\/\/(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。\/\/(2)如果n<>k,但...
...例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行
public class Test {public static final void main(String[] args) {\/\/ 质数(prime number)又称素数\/\/ 对n进行分解质因数,应先找到一个最小的质数kSystem.out.println("该程序实现一个正整数分解质因子");System.out.println("请输入一个正整数:");Scanner scanner = new Scanner(System.in...
...正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
import java.util.*;public class ProOne { \/\/题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。\/\/程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:\/\/(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。\/\/(2)如果n<>k,但...
java的经典例题
【程序3】 题目:打印出所有的 "水仙花数 ",所谓 "水仙花数 "是指一个三位数,其各位数字立方和等于该数本身。【程序4】 题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。【程序5】 题目:利用条件运算符的嵌套来完成此题:学习成绩> =90分的同学用A表示,60-89分之间的用...
java输入一个整数,输出其所有素数因子
import java.util.ArrayList;import java.util.List;import java.lang.Math;public class Solution {private int num;private List<Integer> primeList;private int index;public int getNum() {return num;}public void setNum(int num) {this.num = num;}public Solution(int num) {this.num = ...
JAVA输入一个数,因式分解 如输入90 得到90=2*3*3*5 80 得到80=2*2*...
import java.util.Scanner;public class test { public static void main(String[] args) { Scanner scan = new Scanner(System.in);System.out.println("Input number:");int input = scan.nextInt();int i = 2;int count = 0;System.out.print(input + "=");while (input >= i) { ...
java 编程题集
题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新...
五十八、如何对一个数进行分解质因数
比如,12分解质因数为2*2*3,20分解质因数为2*2*5,合数 合数是指在大于1的整数中除了能被1和本身整除外,还能被其他数(0除外)整除的数。与之相对的是质数,而1既不属于质数也不属于合数。最小的合数是4。每个合数都可以写成几个质数相乘的形式,其中每个质数都是这个合数的因数,把一个合数...
用Java对正整数分解质因数?
因为你没有加结束的条件 在函数中第一行加 if(x==0)\/\/x==0该子问题结束 return;递归两个必须元素:(1)递归终止的条件 (2)分解问题
(java) 将一个自然数分解成几个质数的连乘积形式 举例 input:60 out...
import java.util.List;public class Test { public static void main(String args[]){ List<Integer> output = resolvePrime(60);for (int i = 0 ; i < output.size() - 1; i++) { System.out.print(output.get(i) + " * ");} System.out.print(output.get(output.size() - ...