Java编程题2

来源:互联网 发布:深度linux 安装 编辑:程序博客网 时间:2024/06/05 20:26

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

  • 分析
    需要一个变量i用来存储除数,即最小质因数,正整数num作为被除数。
    至少需要三个条件判断语句,一个用来判断i是否已等于num,如果等于则为最后一个质因数;另一个用来判断num能否被i整除,初始i为2,如果能整除则将得到的结果赋给num,不能整除则i+1。另一个是放在while循环,判断i<=num,该程序不适合使用for循环,使用while循环更加方便。

  • 程序

import java.util.*;public class Test {    public static void main(String[] args)     {         Scanner in = new Scanner(System.in);        System.out.print("输入一个正整数:");        int num = in.nextInt();        int i=2;        System.out.print(num+"=");        while(i<=num)        {            if(i == num )            {                System.out.println(num);break;            }            else if(num%i==0)            {            //注意*必须使用双引号,否则会得到错误的结果                System.out.print(i+"*");                num = num / i;            }            else{                i++;            }        }    }}
  • 结果
输入一个正整数:9090=2*3*3*5
原创粉丝点击