算法题四(将一个正整数分解质因数。例如:输入90,打印出90...)

题目:将一个正整数分解质因数。例如:输入90,打印出90=2 * 3 * 3 * 5。程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:

(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。
(2)如果n <> k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

public static void main(String[] args) {
    Scanner s = new Scanner(System.in);
    System.out.print("请键入一个正整数:     ");
    int n = s.nextInt();
    int k = 2;
    System.out.print(n + "=");
    while (k <= n) {
        if (k == n) {
            System.out.println(n);
            break;
        } else if (n % k == 0) {
            System.out.print(k + "*");
            n = n / k;
        } else
            k++;
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一...
    阿里高级软件架构师阅读 3,307评论 0 19
  • 题目 将一个正整数分解质因数。例:输入90,打印出90=2*3*3*5。 解题思路 对n进行分解质因数,应先找...
    MacXin阅读 1,034评论 0 0
  • 题目: 将一个正整数分解质因数。例如:输入90,打印出90=233*5。 程序分析: 对n进行分解质因数,应先找到...
    Hughman阅读 1,592评论 0 3
  • 【程序1】 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔...
    叶总韩阅读 5,165评论 0 41
  • 第一章数和数的运算 一概念 (一)整数 1整数的意义 自然数和0都是整数。 2自然数 我们在数物体的时候,用来表示...
    meychang阅读 2,646评论 0 5