একটি সংখ্যা ফাঁকা হয় যদি এটি কমপক্ষে 3 সংখ্যার হয় এবং প্রথম এবং শেষ সংখ্যাগুলিকে একসাথে স্ট্রিং করে গঠিত সংখ্যা দ্বারা বিভাজ্য হয়। এই বর্ণনার সাথে মানানসই সবচেয়ে ছোট সংখ্যা হল 100। প্রথম সংখ্যা হল 1, শেষ সংখ্যা হল 0, গঠন করা 10, যা 100 এর একটি গুণনীয়ক। তাই, 100 হল ফাঁকা।
আমাদের এমন একটি ফাংশন তৈরি করতে হবে যা একটি সংখ্যা n নেয় এবং নিকটতম ফাঁকা সংখ্যা প্রদান করে (নিজেটি সহ)। যদি 2টি ফাঁকা সংখ্যা থাকে যা n এর সমান দূরত্বে থাকে, তাহলে নিচেরটি ফেরত দিন।
কিছু উদাহরণ -
gapful(25) ➞ 100 gapful(100) ➞ 100 gapful(103) ➞ 105
উদাহরণ
নিম্নলিখিত কোড -
const num = 4780; const isGapful = n => { if (n < 100){ return false; } const temp = Array.from(n.toString()); return n % (temp[0] + temp[temp.length - 1]) === 0; } function getClosestGapful(n) { let left = n, right = n; while (!isGapful(right)){ right++; } if (n < 100){ return right; } while (!isGapful(left)){ left++; } return n - left <= right - n ? left : right; }; console.log(getClosestGapful(25)); console.log(getClosestGapful(num));
আউটপুট
এটি কনসোলে নিম্নলিখিত আউটপুট তৈরি করবে -
100 4800