เกือบสามเหลี่ยมหน้าจั่ว
สามเหลี่ยมจำนวนเต็มเกือบเท่าหน้าจั่วเป็นสามเหลี่ยมที่ความยาวด้านทั้งหมดเป็นจำนวนเต็ม และทั้งสองข้างเกือบจะเท่ากัน โดยมีความแตกต่างกันโดยสิ้นเชิงของความยาว 1 หน่วย
ปัญหา
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้ตัวเลขที่ระบุขอบเขตของรูปสามเหลี่ยม
ฟังก์ชันของเราควรหาการวัดของสามเหลี่ยมหน้าจั่วที่เกือบเท่าที่มีเส้นรอบรูปใกล้ที่สุดกับเส้นรอบรูปอินพุต
ตัวอย่างเช่น ถ้าปริมณฑลที่ต้องการคือ 500
จากนั้นสามเหลี่ยมหน้าจั่วที่มีเส้นรอบวงใกล้ที่สุดจะเป็น − [105, 104, 181]
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const perimeter = 500; const almostIsosceles = (perimeter = 0) => { let a = perimeter; for(; a > 0; a--){ for(let b = perimeter; b > 0; b--){ for(let c = perimeter; c > 0; c--){ if(a + b + c > perimeter || a !== b + 1 || (Math.pow(a, 3) - Math.pow(b, 3) !== Math.pow(c, 2))){ continue; }; return [a, b, c]; }; }; }; return []; }; console.log(almostIsosceles(perimeter));
ผลลัพธ์
[ 105, 104, 181 ]