使用简单的c++代码6.编写一个程序,输入一个正整数,把它进行因式分解,输出格式如下: 1=1 2=2 3=3 4=2x2 5=5 6=2x3 7=7 8=2x2x2 … 12=2x2x3 …
时间: 2024-09-25 18:17:17 浏览: 59
在C++中,我们可以创建一个简单的程序来完成这个任务。下面是一个基本的示例,它接收用户输入的正整数,并将其分解成质因数:
```cpp
#include <iostream>
#include <vector>
std::vector<int> prime_factors(int num) {
std::vector<int> factors;
for (int i = 2; i * i <= num; ++i) {
while (num % i == 0) {
factors.push_back(i);
num /= i;
}
}
if (num > 1) {
factors.push_back(num); // 如果num还有剩余,它是质数
}
return factors;
}
void print_factors(int num) {
std::cout << num << " = ";
bool first_factor = true;
for (int factor : prime_factors(num)) {
if (!first_factor) {
std::cout << " x ";
}
std::cout << factor;
first_factor = false;
}
std::cout << std::endl;
}
int main() {
int input_num;
std::cout << "请输入一个正整数: ";
std::cin >> input_num;
print_factors(input_num);
return 0;
}
```
在这个程序中,`prime_factors` 函数用于找出给定数字的所有质因数,然后 `print_factors` 函数将它们打印出来。注意,这个程序只处理了正整数的情况,并假设输入的是正数。
阅读全文