কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে ভগ্নাংশের যোগফলের সহজতম রূপ বের করা


আমাদের কাছে একটি অ্যারে আছে যার উপাদানগুলো আবার দুটি সংখ্যা ধারণকারী অ্যারে −

const arr = [[12, 56], [3, 45], [23, 2], [2, 6], [2, 8]];

মনে রাখবেন, প্রতিটি সাব-অ্যারে স্ট্রিক্টলি দুটি সংখ্যা ধারণ করবে।

প্রতিটি সাব-অ্যারের দুটি সংখ্যাতি একটি ভগ্নাংশ বোঝায়। যেমন প্রথম সাব-অ্যারে 12/56, দ্বিতীয় 3/45 ইত্যাদি।

একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা এই অ্যারেটি গ্রহণ করবে এবং সব সাব-অ্যারে দিয়ে প্রতিনিধিত্ব করা ভগ্নাংশগুলোর যোগফল বের করবে।

যোগফলটি ভগ্নাংশ আকারে ही বের করতে হবে (ডেসিমেলে রূপান্তর না করে)।

ফলাফলটি দুটি উপাদানযুক্ত একটি অ্যারে হিসেবে ফেরত দিতে হবে যা ফলাফল ভগ্নাংশটিকে বোঝাবে।

তাহলে, এই ফাংশনটির কোড লিখি −

উদাহরণ

কোডটি হবে −

const arr = [[12, 56], [3, 45], [23, 2], [2, 6], [2, 8]]; const gcd = (a, b) => {   let num = 2, res = 1;   while(num >= Math.min(a, b)){     if(a % num === 0 && b % num === 0){       res = num;     };     num++;   };   return res; } const sumFrac = (a, b) => {   const aDenom = a[1], aNumer = a[0];   const bDenom = b[1], bNumer = b[0];   let resDenom = aDenom * bDenom;   let resNumer = (aDenom*bNumer) + (bDenom*aNumer);   const greatestDivisor = gcd(resDenom, resNumer);   return [resNumer/greatestDivisor, resDenom/greatestDivisor]; }; const sumArrayOfFractions = arr => {   return arr.reduce((acc, val) => sumFrac(acc, val)); }; console.log(sumArrayOfFractions(arr));

আউটপুট

কনসোলে আউটপুট হবে −

[ 1731, 140 ]

  1. জাভাস্ক্রিপ্টে বাটন ক্লিকে যোগফল ফাংশন

  2. জাভাস্ক্রিপ্টে অ্যারেতে divisibleBy() ফাংশন ইমপ্লিমেন্ট করা

  3. জাভাস্ক্রিপ্টে 유리সংখ্যার অ্যারে যোগ করে সরল রূপে ফলাফল ফেরত দেওয়া

  4. জাভাস্ক্রিপ্টে Array.prototype-এ কাস্টম find মেথড যোগ করা