কুৎসিত সংখ্যা হল সেই সংখ্যাগুলি যার মৌলিক গুণনীয়ক হল 2, 3 বা 5৷ 1 থেকে 15 পর্যন্ত, 11টি কুৎসিত সংখ্যা 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15৷ সংখ্যা 7 , 11, 13 কুৎসিত নয় কারণ তারা প্রধান। 14 নম্বরটি কুৎসিত নয় কারণ এর প্রধান গুণনীয়কটিতে 7 আসবে। সুতরাং ধরুন আমরা 10 তম কুৎসিত সংখ্যাটি পরীক্ষা করতে চাই। মান হবে 12।
আসুন একটি ধারণা পেতে নিম্নলিখিত অ্যালগরিদমটি দেখি −
অ্যালগরিদম
getUglyNumbers(n)
ইনপুট - পদের সংখ্যা।
আউটপুট - nম কুৎসিত সংখ্যা খুঁজুন।
n i2 :=0, i3 :=0, i5 :=0 next2mul :=2, next3mul :=3, next5Mul :=5 next :=1 ugluNum[0] :=1 i :=1 থেকে n এর জন্য, পরবর্তী করুন :=next2Mul, next3Mul এবং next5Mul uglyNum[i] :=next if next =next2Mul, তারপর i2 :=i2 + 1 next2mul :=uglyNum[i2] * 2 যদি পরবর্তী =next3Mul, তারপর i3 :=i3 + 1 next3mul :=uglyNum[i3] * 3 যদি next =next5Mul, তারপর i5 :=i5 + 1 next5mul :=uglyNum[i5] * 5 সম্পন্ন হয় পরবর্তীতে ফেরত আসেউদাহরণ (C++)
# অন্তর্ভুক্তনেমস্পেস ব্যবহার করে std;int min(int x, int y, int z){ //তিনটি সংখ্যার মধ্যে সবচেয়ে ছোট খুঁজুন if(x > n; cout < ইনপুট
10আউটপুট
টার্ম লিখুন:1010তম কুৎসিত সংখ্যা হল:12