7 of 17 menu

Vidurkio radimo iš masyvo klaida

Panagrinėkime klaidą, susijusią su aritmetinio vidurkio radimu iš masyvo elementų. Tarkime, pavyzdžiui, kad duotas toks masyvas:

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

Norint rasti elementų vidurkį, reikia surasti jų sumą ir padalinti iš kiekio. Kažkoks programuotojas jau išsprendė šią užduotį taip:

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

Pažiūrėkime į šio sprendimo problemas. Techniškai kodas veikia teisingai ir pateikia teisingą atsakymą. Esmė ta, kad matematiškai teisinga ir padalinti visą sumą iš kiekio, ir padalinti kiekvieną iš dėmenų iš kiekio.

Tačiau iškyla kita problema. Esmė ta, kad mes atliksime dalybą tiek kartų, kiek elementų yra mūsų masyve. Ir išeina, kad mes atliekame didelį kiekį nereikalingų operacijų, juk dalybą galima buvo atlikti pabaigoje - vieną kartą, padalinus visą rastą sumą.

Optimizuokime mūsų kodą:

let sum = 0; for (let elem of arr) { sum += elem; } let avg = sum / arr.length; console.log(avg);
Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti