7 of 17 menu

ข้อผิดพลาดในการหาค่าเฉลี่ยจากอาร์เรย์

ลองพิจารณาข้อผิดพลาดที่เกี่ยวข้องกับการหา ค่าเฉลี่ยเลขคณิตจากองค์ประกอบของ อาร์เรย์ ตัวอย่างเช่น สมมติว่าเรา มีอาร์เรย์ดังนี้:

let arr = [1, 2, 3, 4, 5];

ในการหาค่าเฉลี่ยขององค์ประกอบ คุณต้องหาผลรวมและหาร ด้วยจำนวน Programmer คนหนึ่ง ได้แก้ปัญหานี้ด้วยวิธี ต่อไปนี้:

let avg = 0; for (let elem of arr) { avg += elem / arr.length; } console.log(avg);

ลองพิจารณาปัญหาของวิธีแก้ปัญหานี้ ในทางเทคนิคโค้ดทำงานถูกต้องและให้ คำตอบที่ถูกต้อง ประเด็นคือในทางคณิตศาสตร์มันถูกต้อง ทั้งการหารผลรวมทั้งหมดด้วยจำนวน และการหารแต่ละเทอมด้วยจำนวน

อย่างไรก็ตาม ปัญหาอื่นก็เกิดขึ้น ประเด็น คือเราจะทำการหาร หลายครั้งเท่ากับจำนวนองค์ประกอบใน อาร์เรย์ของเรา และปรากฏว่าเราทำ การดำเนินการที่ฟุ่มเฟือยจำนวนมาก เพราะการหารสามารถทำได้ ในตอนท้าย - เพียงครั้งเดียว โดยหาร ผลรวมทั้งหมดที่หาได้

มาปรับปรุงโค้ดของเรากัน:

let sum = 0; for (let elem of arr) { sum += elem; } let avg = sum / arr.length; console.log(avg);
ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ