在C++中,可以通过循环遍历从2开始的所有整数,依次判断这些整数是否能够整除给定的大数,如果能够整除,那么这个整数就是大数的一个质因数。具体实现代码如下:
#include <iostream> #include <vector> void primeFactorization(long long n) { std::vector<long long> factors; for (long long i = 2; i * i <= n; i++) { while (n % i == 0) { factors.push_back(i); n /= i; } } if (n > 1) { factors.push_back(n); } std::cout << "Prime factors of the number are: "; for (long long factor : factors) { std::cout << factor << " "; } } int main() { long long number; std::cout << "Enter a number to find its prime factors: "; std::cin >> number; primeFactorization(number); return 0; }
在上面的代码中,首先定义了一个primeFactorization
函数,该函数接受一个大数n
作为参数,并将其分解为质因数存储在factors
向量中。然后在主函数中,从标准输入中读取一个大数,并调用primeFactorization
函数来计算其质因数。最后输出质因数序列。