首页 > 文章列表 > 寻找一个数的唯一质因数的C/C++程序的乘积

寻找一个数的唯一质因数的C/C++程序的乘积

唯一 编程关键词:数 质因数
146 2023-09-04

唯一素因数也是素数的因数。在这个问题中,我们必须找到一个数的所有唯一质因数的乘积。 素数是一个只有两个因数的数,即数字和一。

在这里,我们将尝试找到计算一个数的唯一素因数的乘积的最佳方法。数字。让我们举个例子来更清楚地说明问题。

有一个数n = 1092,我们必须得到它的唯一质因数的乘积。 1092 的质因数是 2, 3, 7, 13,乘积是 546。

2 找到这个的一个简单方法是找到该数字的所有因数并检查该因数是否是质数数字。如果然后将其乘以数字,然后返回乘法变量。

Input: n = 10
Output: 10

解释

在这里,输入的数字是10,只有2个质因数,它们是5和2。

因此它们的乘积是10。

使用从i = 2到n的循环,检查i是否是n的因数,然后检查i是否是质数,如果是,则将乘积存储在product变量中,并继续这个过程直到i = n。

例子

#include <iostream>
using namespace std;
int main() {
   int n = 10;
   long long int product = 1;
   for (int i = 2; i <= n; i++) {
      if (n % i == 0) {
         int isPrime = 1;
         for (int j = 2; j <= i / 2; j++) {
            if (i % j == 0) {
               isPrime = 0;
               break;
            }
         }
         if (isPrime) {
            product = product * i;
         }
      }
   }
   cout << product;
   return 0;
}