আসুন আমরা 9009 নম্বরটি বিবেচনা করি। এটি একটি বিশেষ সংখ্যা এই অর্থে যে এটি সবচেয়ে বড় প্যালিনড্রোম সংখ্যা যা দুটি 2-অঙ্কের সংখ্যা (91 এবং 99) গুণ করে তৈরি করা যেতে পারে।
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি সংখ্যা n নেয় (যা সংখ্যার সংখ্যা নির্দিষ্ট করে)। ফাংশনটি কেবলমাত্র সবচেয়ে বড় প্যালিনড্রোম সংখ্যাটি খুঁজে বের করতে হবে এবং ফেরত দিতে হবে যা দুটি n সংখ্যার সংখ্যার গুণের দ্বারা গঠিত হতে পারে।
উদাহরণ
নিম্নলিখিত কোড -
const largestPalindromic = num => { let i, n, m, d, max, sup, limit, number = 0; for (i = 1; i < num; i += 1) { number = 10 * number + 9; }; max = number; sup = 10 * number + 9; const isPalindromic = n => { let p = 0, q = n, r; while (n > 0) { r = n % 10; p = 10 * p + r; n = Math.floor(n / 10); }; return p === q; }; for (n = sup * sup, m = max * max; n > m; n -= 1) { if (isPalindromic(n)) { limit = Math.ceil(Math.sqrt(n)); d = sup; while (d >= limit) { if (n % d === 0 && n / d > max) { return n; } d -= 1; } } }; } console.log(largestPalindromic(3));
আউটপুট
নিম্নোক্ত কনসোলে আউটপুট -
906609