এখানে আমরা দেখব একটি সংখ্যা অস্বাভাবিক সংখ্যা কি না। একটি সংখ্যাকে অস্বাভাবিক বলা হয় যদি সংখ্যাটির সর্বশ্রেষ্ঠ মৌলিক গুণনীয়কটি সংখ্যাটির বর্গমূলের চেয়ে কঠোরভাবে বড় হয়। কিছু অস্বাভাবিক সংখ্যা হল:2, 3, 5, 6, 7, 10, 11, 13, 14, 15, 17, 19, 20, 21, 22, 23, 26, 28, 29, 31, 33, 34 , 35, 37, 38, 39, 41, 42, 43, 44, 46
এটি সমাধান করার জন্য, আমরা বৃহত্তম মৌলিক গুণনীয়ক খুঁজে বের করার চেষ্টা করব, তারপর পরীক্ষা করব যে গুণনীয়কটি সংখ্যার বর্গমূলের চেয়ে বড় কি না। যদি হ্যাঁ, তাহলে সংখ্যাটি অস্বাভাবিক সংখ্যা, অন্যথায় নয়৷
উদাহরণ
#include <iostream> #include <cmath> using namespace std; int largestPrimeFactor(int num) { int max_prime = -1; while (num % 2 == 0) { //remove all 2s from the number max_prime = 2; num >>= 1; } for (int i = 3; i <= sqrt(num); i += 2) { while (num % i == 0) { max_prime = i; num = num / i; } } if (num > 2) max_prime = num; return max_prime; } bool isUnusual(int num) { int largePrimeFactor = largestPrimeFactor(num); if (largePrimeFactor > sqrt(num)) { return true; } else { return false; } } int main() { int n = 14; if (isUnusual(n)) { cout << n << " is an unusual number"; } else { cout << n << " is not an unusual number"; } }
আউটপুট
14 is an unusual number