আমাদের একটি ফাংশন লিখতে হবে যা দুটি নাম্বার আর্গুমেন্ট হিসেবে নিবে m এবং n, এবং এটি m এবং n-এর মাঝপথে (দউইইনক্লুসিভ) পড়া সব ইভেন নাম্বারগুলোর যোগফল রিটার্ন করবে।
উদাহরণস্বরূপ -
যদি m = 10 এবং n = -4
আউটপুট হবে 10+8+6+4+2+0+(-2)+(-4) = 24
অ্যাপ্রোচ
প্রথমে আমরা n পর্যন্ত সব ইভেন নাম্বারগুলোর যোগফল এবং m পর্যন্ত সব ইভেন নাম্বারগুলোর যোগফল বের করব।
তারপর দুইটোর মধ্যে যেটি বড় সেটি থেকে ছোটটির যোগফল বিয়োগ করব যা শেষে m এবং n-এর মাঝপথের যোগফল দেবে।
ফর্মুলা
০ থেকে N পর্যন্ত সব ইভেন নাম্বারগুলোর যোগফল হয় -
$$\frac{N\times(N+2)}{4}$$
তাহলে সব কিছু কোডে বসিয়ে দিই -
উদাহরণ
const sumEven = n => (n*(n+2))/4; const evenSumBetween = (a, b) => { return a > b ? sumEven(a) - sumEven(b) + b : sumEven(b) - sumEven(a) + a; }; console.log(evenSumBetween(-4, 10)); console.log(evenSumBetween(4, 16)); console.log(evenSumBetween(0, 10)); console.log(evenSumBetween(8, 8)); console.log(evenSumBetween(-4, 4));আউটপুট
কনসোলে আউটপুট হবে -
24 70 30 8 0