码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-11-12 06:27:58      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:

 1 import java.util.*;
 2 public class lianxi04{
 3     public static void main(String []a) {
 4         Scanner s = new Scanner(System.in);
 5         System.out.print( "请键入一个正整数:     "); 
 6         int n= s.nextInt();
 7         int k=2; 
 8         System.out.print(n + "=" );
 9         while(k <= n) {
10             if(k == n) {System.out.println(n);break;}
11             else if( n % k == 0) {System.out.print(k + "*");
12             n = n / k; 
13             } 
14             else k++;
15         }
16 
17     }
18 
19 }

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:   
(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。   
(2)如果n <> k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数你n,重复执行第一步。   
(3)如果n不能被k整除,则用k+1作为k的值,重复执行第一步。 

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

标签:

原文地址:http://www.cnblogs.com/sosolili/p/4957834.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!