Nordmann3 Skrevet 18. oktober 2017 Del Skrevet 18. oktober 2017 <?php $tall=array(12,14,11,45,23,65,15); ?> Hvordan kan jeg finne ut summen av alle disse tallene ved å bruke en løkke, og en annen løkke til å finne gjennomsnittet? Sikkert noe enkelt som jeg ikke klarer å finne ut av. takk Lenke til kommentar
Emsal Skrevet 18. oktober 2017 Del Skrevet 18. oktober 2017 (endret) Sum: http://php.net/manual/en/function.array-sum.php Count: http://php.net/manual/en/function.count.php Snitt: Sum/Count Eventuelt: http://php.net/manual/en/control-structures.foreach.php foreach ($tall as $v) { $count++; $sum += $v; } $avg = $sum/$count; Eller foreach($tall as $k => $v) { $count++; $sum += $v; } $avg = $sum/$count; Endret 18. oktober 2017 av Emsal Lenke til kommentar
Dan-Levi Skrevet 25. oktober 2017 Del Skrevet 25. oktober 2017 (endret) For å enklere forstå hvordan du skal kode dette er det nødvendig å sette opp mattestykket først. Når du vet hvordan den matematiske formelen ser ut er det enklere å skrive koden. Det er mange matematiske funksjoner innebygd i PHP og jeg skal dekke et par av dem her. For å finne gjennomsnittet av en tallrekke er det logisk å legge sammen alle tallene for så å dele på antall tall. x=y/z Eller gjennomsnitt=sum/antall Den tungvinne måten er å lage en løkke, om dette er en oppgave så hold deg til løkken, ser det er svart med løkke over. En mer lesbar metode er å bruke de innebygde matematiske funksjonene i PHP som heter array_sum og count. array_sum brukes slik: $sum = array_sum($tall); // 185 count brukes slik: $antall = count($tall); // 7 Nå som vi vet hva PHP genererer av svar kan vi ta frem kalkulatoren og se hva resultatet blir. 185 / 7 = 26.428571428571 Så med funksjonene i bruk: $tall = array(12,14,11,45,23,65,15); $sum = array_sum($tall); $antall = count($tall); $gjennomsnitt = $sum / $antall; echo $gjenomsnitt; // 26.428571428571 Sannelig er det riktig Er det noe du lurer på angående PHP er det ofte lurt å søke i manualen først etter hva du ønsker. Du ønsker her å vite summen, så søk sum. Samme for telling, søk count. Les deg gjennom og pugg, eneste måten å bli skikkelig flink. Denne to-linern gir samme resultat. Trikset er at om du ikke trenger å deklarere variablene så bruk funksjonene på samme linje, men pass på at koden er leselig. $tall = array(12,14,11,45,23,65,15); echo $gjennomsnitt = array_sum($tall) / count($tall); Endret 25. oktober 2017 av Dan-Levi 1 Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå