সমস্যা বিবৃতি
n ধনাত্মক পূর্ণসংখ্যাগুলির একটি লিঙ্কযুক্ত তালিকা দেওয়া হয়েছে। আমাদের সর্বনিম্ন এবং সর্বোচ্চ মান সহ মৌলিক সংখ্যা খুঁজে বের করতে হবে।
যদি প্রদত্ত তালিকা −
হয়10 -> 4 -> 1 -> 12 -> 13 -> 7 -> 6 -> 2 -> 27 -> 33 তারপর সর্বনিম্ন মৌলিক সংখ্যা হল 2 এবং সর্বোচ্চ মৌলিক সংখ্যা হল 13
অ্যালগরিদম
<পূর্ব>1. প্রদত্ত সংখ্যা থেকে সর্বাধিক সংখ্যা খুঁজুন। এটাকে maxNumber2 বলি। 1 থেকে maxNumber পর্যন্ত মৌলিক সংখ্যা তৈরি করুন এবং একটি গতিশীল অ্যারে3 এ সংরক্ষণ করুন। সংযুক্ত তালিকার পুনরাবৃত্তি করুন এবং সর্বনিম্ন এবং সর্বাধিক মান সহ মৌলিক সংখ্যা খুঁজে পেতে ডায়নামিক অ্যারে ব্যবহার করুনউদাহরণ
#include#include #include #include #include #define SIZE(arr) (sizeof(arr) / sizeof(arr[0]))নেমস্পেস ব্যবহার করে std;void printMinAndMaxPrimes(list
intList){ int maxNumber =*max_element(intList.begin(), intList.end()); ভেক্টর<বুল> প্রাইম (সর্বোচ্চ সংখ্যা + 1, সত্য); primes[0] =primes[1] =মিথ্যা; জন্য (int p =2; p * p <=maxNumber; ++p) { if (primes[p]) { (int i =p * 2; i <=maxNumber; i +=p) { মৌলিক[i ] =মিথ্যা; } } } int minPrime =INT_MAX; int maxPrime =INT_MIN; জন্য (auto it =intList.begin(); it !=intList.end(); ++it) { if (primes[*it]) { minPrime =min(minPrime, *it); maxPrime =max(maxPrime, *it); } } cout <<"মিনিট মানের প্রধান সংখ্যা =" < intList(arr, arr + SIZE(arr)); printMinAndMaxPrimes(intList); রিটার্ন 0;
আউটপুট
আপনি যখন উপরের প্রোগ্রামটি কম্পাইল এবং এক্সিকিউট করবেন। এটি নিম্নলিখিত আউটপুট −
তৈরি করেনূন্যতম মানের প্রাইম সংখ্যা =2 সর্বোচ্চ মানের প্রাইম সংখ্যা =13