根据提示输入一个正整数,用java程序进行分解质因数。例如:输入 90,打印出 90=233*5
原理分析:
1.对 n 进行分解质因数,应先找到一个最小的质数 k,然后按下述步骤完成:
2.如果这个质数恰等于 n,则说明分解质因数的过程已经结束,打印出即可。
3.如果 n <> k,但 n 能被 k 整除,则应打印出 k 的值,并用 n 除以 k 的商,作为新的正整数,的 n,重复执行第一步
4如果 n 不能被 k 整除,则用 k+1 作为 k 的值,重复执行第一步。
结果演示
代码展示
package com.one;
import java.util.Scanner;
public class Fjzys {
public static Scanner input = new Scanner(System.in);
public static void main(String[] args) {
System.err.println("请输入一个数:");
int x = input.nextInt();
System.out.print(x+"=");
int i=2;
while(i<=x){ //使用循环来找到可以被整除的数,然后通过out函数输出
if(i == x){ //如果相等的话,就说明这个数没有因数,只有1和它自己;
System.out.println(i);
break;
}else if(x % i ==0){ //如果这个数有因数,然后找到除去这个因数后的值,继续循环
System.out.print(i+"*");
x=x/i;
}else{ //如果都不满足,则继续循环
i++;
}
}
}
}
深入java,逻辑练习,了解更多关注我哟!!!