求出区间[a,b]中所有整数的质因数分解。
输入格式:
输入两个整数a,b。数据规模和约定 2<=a<=b<=10000
输出格式:
每行输出一个数的分解,形如k=a1a2a3...(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
#include <iostream>
using namespace std;void decomposePrimeFactors(int num) {cout << num << "="; // 输出当前数字for (int i = 2; i <= num; i++) {while (num % i == 0) { // 如果可以整除cout << i; // 输出质因数num /= i;if (num != 1) {cout << "*"; // 输出乘号}}}cout << endl;
}int main() {int a, b;cin >> a >> b;for (int i = a; i <= b; i++) {decomposePrimeFactors(i);}return 0;
}