黑马程序员技术交流社区

标题: 一枚小程序,在线求解答啊【程序4】 [打印本页]

作者: 马超    时间: 2012-7-7 13:12
标题: 一枚小程序,在线求解答啊【程序4】
【程序4】   晕啊~~搞了半天搞不出。。:(
题目:将一个正整数分解质因数。例如:输入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的值,重复执行第一步。   
作者: 曹恒业    时间: 2012-7-7 13:25
本帖最后由 曹恒业 于 2012-7-7 13:27 编辑



作者: 韦念欣    时间: 2012-7-7 14:09
这个是我写的代码。楼主可以参考参考!
  1. import java.io.*;
  2. public class Demo
  3. {
  4.         public static void main(String[] args)throws IOException
  5.         {
  6.                 System.out.print("请输入一个正整数:");
  7.                 int num = Integer.parseInt(new BufferedReader(
  8.                                         new InputStreamReader(System.in)).readLine());
  9.                 for (int i=2; i<=num; i++)
  10.                 {
  11.                         while (num % i == 0)
  12.                         {
  13.                                 System.out.print(i+" ");
  14.                                 num /= i;
  15.                         }
  16.                 }
  17.                 System.out.println();
  18.         }
  19. }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2