Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

ผลรวมของผลิตภัณฑ์ย่อยใน JavaScript


เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้อาร์เรย์ของตัวเลขที่มีความยาว N โดยที่ N เป็นจำนวนเต็มคู่บวกและแบ่งอาร์เรย์ออกเป็นสองอาร์เรย์ย่อย (เช่น ซ้ายและขวา) ที่มีองค์ประกอบ N/2 แต่ละตัว

ฟังก์ชันควรทำผลคูณของอาร์เรย์ย่อยแล้วบวกทั้งสองผลลัพธ์ที่ได้

ตัวอย่างเช่น หากอาร์เรย์อินพุตคือ −

const arr = [1, 2, 3, 4, 5, 6]

จากนั้นผลลัพธ์ควรเป็น −

(1*2*3) + (4*5*6)
6+120
126

รหัสสำหรับสิ่งนี้จะเป็น −

const arr = [1, 2, 3, 4, 5, 6]
const subArrayProduct = arr => {
   const { length: l } = arr;
   const creds = arr.reduce((acc, val, ind) => {
      let { left, right } = acc;
      if(ind < l/2){
         left *= val;
      }else{
         right *= val;
      }
      return { left, right };
   }, {
      left: 1,
      right: 1
   });
   return creds.left + creds.right;
};
console.log(subArrayProduct(arr));

ต่อไปนี้เป็นผลลัพธ์บนคอนโซล -

126