7 of 17 menu

Fel vid beräkning av medelvärdet

Låt oss överväga ett fel relaterat till beräkningen av aritmetiskt medelvärde av element i en array. Låt oss som exempel ha följande array:

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

För att hitta medelvärdet av elementen måste du hitta deras summa och dividera med antalet. En programmerare har redan löst detta problem på följande sätt:

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

Låt oss titta på problemen med denna lösning. Tekniskt sett fungerar koden korrekt och ger rätt svar. Anledningen är att det matematiskt sett är korrekt att antingen dividera hela summan med antalet, eller att dividera varje term med antalet.

Men ett annat problem uppstår. Saken är att vi kommer att utföra division lika många gånger som det finns element i vår array. Och det visar sig att vi utför ett stort antal onödiga operationer, eftersom divisionen kunde ha gjorts i slutet - en gång, genom att dividera hela den hittade summan.

Låt oss optimera vår kod:

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