小练习_num1
题目:将一个正整数分解质因数。例如:输入90,打印输出90=2*3*3*5。
1 /* 2 分解质因数 3 */ 4 import java.util.*; 5 class num1 6 { 7 public static void main(String[ ] args)throws Exception 8 { 9 boolean b=true; 10 while(b) 11 { 12 try 13 { 14 Scanner sc = new Scanner(System.in); 15 System.out.println("********************************************************"); 16 System.out.println("开始___请输入一个大于一的正整数:"); 17 int n = sc.nextInt(); 18 int k=2; 19 System.out.print(n+"="); 20 while(k<=n) 21 { 22 if(k==n) //判断n是否等于k,如果等说明本身就是质数,查找完毕,break! 23 { 24 System.out.println(n);break; 25 } 26 else if(n%k==0) //此时n肯定不是质数,与k求余,如果能被整除,此k为其一个质因数 27 { 28 System.out.print(k+"*");n=n/k; 29 } 30 else //此时的n本身不是质数,此时k也不是其质因数,从小到大,开始寻找下一个质因数 31 k++; 32 } 33 while(k>n) 34 { 35 System.out.println("<ERROR-请输入大于1的正整数>");break; 36 } 37 } 38 catch(Exception e) 39 { 40 System.out.println("<!!您输入的不是大于一的正整数 或者 超出计算范围!>"); 41 } 42 Scanner scgoon = new Scanner(System.in); 43 System.out.println("_______________________________________________"); 44 System.out.println("回车继续,输入exit退出"); 45 String sg = scgoon.nextLine(); 46 if(sg.equals("exit")) 47 {b=false;} 48 } 49 } 50 }
posted on 2017-04-07 14:55 Anonymous_5 阅读(174) 评论(0) 收藏 举报
浙公网安备 33010602011771号