আর্মস্ট্রং নম্বর: একটি পজিটিভ ইন্টিজারকে আর্মস্ট্রং নম্বর (অর্ডার n) বলা হয় যদি:
abcd... = a^n + b^n + c^n + d^n + ...
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা ঠিক দুটি নম্বরের একটি অ্যারে নেবে যেটি একটি রেঞ্জ নির্দেশ করে।
ফাংশনটি সেই রেঞ্জে পড়া সকল আর্মস্ট্রং নম্বর ধারণকারী একটি অ্যারে রিটার্ন করবে (শুরু এবং শেষ নম্বর আর্মস্ট্রং হলে সেগুলোও অন্তর্ভুক্ত)।
আমরা প্রথমে আলাদা একটি ফাংশন লিখব আর্মস্ট্রং নম্বর ডিটেক্ট করার জন্য এবং তারপর রেঞ্জের মাধ্যমে ইটারেট করে ডিজায়ারড নম্বরগুলোর সাথে অ্যারে পূরণ করব।
উদাহরণ
নিচে কোডটি দেওয়া হলো:
const range = [11, 1111]; const isArmstrong = (num) => { const numberOfDigits = ('' + num).length; let sum = 0; let temp = num; while (temp > 0) { let remainder = temp % 10; sum += remainder ** numberOfDigits; temp = parseInt(temp / 10); } return sum === num; }; const findAllArmstrong = ([start, end]) => { const res = []; for(let i = start; i <= end; i++){ if(isArmstrong(i)){ res.push(i); }; }; return res; }; console.log(findAllArmstrong(range));আউটপুট
কনসোল আউটপুট:
[ 153, 370, 371, 407 ]