Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

การคำนวณพื้นที่สามเหลี่ยมจากสามด้านใน JavaScript

ปัญหา

เราต้องเขียนฟังก์ชัน JavaScript ที่รับสามด้านของสามเหลี่ยม และใช้สูตรของเฮอรอน (Heron's formula) คำนวณพื้นที่

ตัวอย่าง

โค้ดตัวอย่างด้านล่าง:

const s1 = 10; const s2 = 8; const s3 = 7;
const findArea = (s1, s2, s3) => {
  const arr = [];
  const arguments = [s1, s2, s3];
  for (let i = 0; i < arguments.length; i++) {
    arr.push(arguments[i]);
  }
  let s = (arr[0] + arr[1] + arr[2]) / 2;
  return Math.sqrt(s * (s - arr[0]) * (s - arr[1]) * (s - arr[2]));
};
console.log(findArea(s1, s2, s3));

ผลลัพธ์

27.810744326608734

คำอธิบายเพิ่มเติม

สูตรเฮอรอน: พื้นที่ = √[s(s-a)(s-b)(s-c)] โดยที่ s = (a+b+c)/2 เป็นกึ่งเส้นรอบรูป ควรเพิ่มการตรวจสอบความเป็นไปได้ของสามเหลี่ยม (triangle inequality) ก่อนคำนวณ