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