7 of 17 menu

Грешка у проналажењу просека низа

Размотрићемо грешку повезану са проналажењем аритметичке средине елемената низа. Нека је за пример дат овај низ:

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

Да би се пронашао просек елемената, потребно је наћи њихов збир и поделити га са бројем елемената. Неки програмер је већ решио овај задатак на следећи начин:

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ščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј