首页 > 代码库 > 基础练习 分解质因数

基础练习 分解质因数

问题描述
  求出区间[a,b]中所有整数的质因数分解。
输入格式
  输入两个整数a,b。
输出格式
  每行输出一个数的分解,形如k=a1*a2*a3...(a1<=a2<=a3...,k也是从小到大的)(具体可看样例)
样例输入
3 10
样例输出
3=3
4=2*2
5=5
6=2*3
7=7
8=2*2*2
9=3*3
10=2*5
提示
  先筛出所有素数,然后再分解。
数据规模和约定
  2<=a<=b<=10000
 1 import java.text.DecimalFormat;
 2 import java.text.NumberFormat;
 3 import java.util.ArrayList;
 4 import java.util.Scanner;  
 5 
 6     public class Main{   
 7         public static void main(String[] args){  
 8             Scanner input = new Scanner(System.in);
 9             int n,m;
10             n = input.nextInt();
11             m = input.nextInt();
12             for(int i=n;i<=m;i++){
13                 int temp = i;
14                 int j = 2;
15                 boolean flag = true;
16                 System.out.print(i+"=");
17                 while(temp!=1){
18                     if(temp%j==0){
19                         if(flag){
20                             System.out.print(j);
21                             temp = temp/j;
22                             flag = false;
23                             continue;
24                         }
25                         System.out.print("*"+j);
26                         temp = temp/j;
27                     }else{
28                         j++;
29                     }
30                 }
31                 System.out.println();
32                 
33             }
34         }
35  }  

 

基础练习 分解质因数