7 of 17 menu

Napaka pri iskanju povprečja matrike

Oglejmo si napako, povezano z iskanjem aritmetične sredine elementov matrike. Za primer imamo dano naslednjo matriko:

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

Da bi našli povprečje elementov, moramo najti njihovo vsoto in deliti s številom elementov. Nek programer je to težavo že rešil na naslednji način:

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

Oglejmo si težave te rešitve. Tehnično koda deluje pravilno in daje pravilen odgovor. Dejstvo je, da je matematično pravilno tako deliti celotno vsoto s številom elementov, kot tudi deliti vsak seštevanec posebej s številom elementov.

Vendar se pojavi druga težava. Gre za to, da bomo deljenje izvajali tolikokrat, kolikor je elementov v naši matriki. In izkaže se, da opravljamo veliko število nepotrebnih operacij, saj bi lahko deljenje izvedli na koncu - enkrat, tako da bi delili celotno najdeno vsoto.

Optimizirajmo našo kodo:

let sum = 0; for (let elem of arr) { sum += elem; } let avg = sum / arr.length; console.log(avg);
Slovenščina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni