সমস্যা
আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা ঠিক দুটি সাব-অ্যারে ধারণকারী একটি অ্যারে নেবে, প্রতিটি সাব-অ্যারে দুটি সংখ্যা দিয়ে একটি 유리সংখ্যা (rational number) ভগ্নাংশ আকারে নির্দেশ করে। ফাংশনটি দুটি 유리সংখ্যা যোগ করবে এবং যোগফলের সবচেয়ে সরল রূপ (simplest form) একটি নতুন দুটি সংখ্যার অ্যারে আকারে ফেরত দেবে।
উদাহরণ
নিচে কোডটি দেওয়া হলো:
const arr = [
[1, 2],
[1, 3]
];
const findSum = (arr = []) => {
const hcf = (a, b) => b ? hcf(b, a % b) : a;
if(!arr.length){
return null;
}
const [n, d] = arr.reduce(([a, x], [b, y]) => [a*y + b*x, x*y]);
const g = hcf(n, d);
return g === d ? n / d : [n / g, d / g];
};
console.log(findSum(arr));আউটপুট
কনসোল আউটপুট:
[5, 6]