আমাদের একটি ফাংশন লিখতে হবে, যেনাম reverseSum(), যা দুটি নম্বরের অ্যারে গ্রহণ করবে, যেনাম first এবং second এবং একটি নতুন অ্যারে রিটার্ন করবে যেটিতে থাকবে:
প্রথম অ্যারের প্রথম এলিমেন্ট এবং দ্বিতীয় অ্যারের শেষ এলিমেন্টের সমষ্টি প্রথম এলিমেন্ট হিসেবে,
প্রথম অ্যারের দ্বিতীয় এলিমেন্ট এবং দ্বিতীয় অ্যারের সেকেন্ড লাস্ট এলিমেন্টের সমষ্টি, এবং এভাবেই চলতে থাকবে।
যখন যেকোনো একটি অ্যারে অন্যটির আগে খালি হয়ে যায়, তবে আমরা সিম্পলি বাকি সব এলিমেন্টগুলো অ্যারেতে পুশ করব। তাহলে, এই ফাংশনের কোড লিখি:
উদাহরণ
const first = [23, 5, 7, 2, 34, 7, 8]; const second = [2, 4, 21, 4, 6, 7, 56, 23, 32, 12]; const reverseSum = (first, second) => { const sumArray = []; let i, j, k; for(i = 0, j = second.length - 1, k = 0; i < first.length && j >= 0; i++, j--, k++){ sumArray[k] = first[i] + second[j]; }; while(i < first.length){ sumArray[k] = first[i]; k++; i++; }; while(j >= 0){ sumArray[k] = second[j]; k++; j--; }; return sumArray; }; console.log(reverseSum(first, second));আউটপুট
কনসোলে আউটপুট হবে:
[ 35, 37, 30, 58, 41, 13, 12, 21, 4, 2 ]
আউটপুটে এই নম্বরগুলো কেন দেখাচ্ছে তা দেখি। উদাহরণস্বরূপ, উপরের ৩৫, হলো প্রথম অ্যারের প্রথম এলিমেন্ট এবং দ্বিতীয় অ্যারের শেষ এলিমেন্টের সমষ্টি, অর্থাৎ:
23 (প্রথম অ্যারের প্রথম এলিমেন্ট) +12 (দ্বিতীয় অ্যারের শেষ এলিমেন্ট) ------ 35