ปัจจัยเฉพาะเฉพาะ เป็นตัวประกอบของจำนวนที่เป็นจำนวนเฉพาะด้วย ในปัญหานี้ เราต้องหาผลคูณของตัวประกอบเฉพาะเฉพาะของจำนวนหนึ่ง จำนวนเฉพาะ เป็นตัวเลขที่มีตัวประกอบเพียงสองตัว คือ ตัวเลขและตัวหนึ่ง
เราจะพยายามหาวิธีที่ดีที่สุดในการคำนวณผลคูณของตัวประกอบเฉพาะของตัวเลข มาดูตัวอย่างเพื่อทำให้ปัญหาชัดเจนยิ่งขึ้น
มีตัวเลขบอกว่า 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 เป็นจำนวนเฉพาะหรือไม่ ถ้าใช่ จากนั้นเก็บผลิตภัณฑ์ในตัวแปรผลิตภัณฑ์ และดำเนินการตามขั้นตอนนี้ต่อไปจนถึง 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;
}