eirikri Skrevet 23. september 2010 Del Skrevet 23. september 2010 (endret) Hei, tar opp et fag atm på skolen og det er grunnleggende php. tipper oppgaven min er banalt enkel men har sykt brain freeze akkurat nå. Setter pris på hjelp Bruk arrayet i oppgave 3. Summer alle tallene med en for-løkke. $liste = array(1,2,3,4,5,6,7,8,9); for ($i=0;$i<9;$i++) { #echo $liste[$i>; #echo array_sum($liste[$i>); } er hva jeg har prøvd denne gangen(prøvd i ca 1 time så har vært mange ulagrete forsøk ). Er jo egentlig bare å bruke array_sum, men siden han spesifikt ber om en for-løkke må det vel gjøre på en annen måte? Vet også at forreach hadde vært mye enklere, men må altså bruke en for. sigh Har prøvd å søke endel men finner bare forreach-metoder. Og de fungerte ikke like godt med for akkurat takk for all hjelp Endret 23. september 2010 av eirikri Lenke til kommentar
BlueEAGLE Skrevet 23. september 2010 Del Skrevet 23. september 2010 (endret) Hvis for-løkken skal ha noen effekt på summeringen så må du ha en egen variabel som holder summen. Følgende kode ville jeg da skrevet $sum = 0; for ($index = 0; $index < count($array); $index++) { $sum += $array[$index]; } echo $sum; Jeg ville selvsagt også nevnt at array_sum() gir samme resultatet. EDIT: Legg merke til at jeg bruker $index og ikke $i. Det gjør jeg av hensyn til lesbarheten. Det er min faste mening at gode variabelnavn er en forutsetning for god kode. Endret 23. september 2010 av BlueEAGLE Lenke til kommentar
OIS Skrevet 28. september 2010 Del Skrevet 28. september 2010 I alle skriptspråk iallefall bør du telle antall ganger du skal loope før loopen istedenfor hver kjøring. for ($i = 0, $t = count($arr); $i < $t; ... Lenke til kommentar
BlueEAGLE Skrevet 28. september 2010 Del Skrevet 28. september 2010 I alle skriptspråk iallefall bør du telle antall ganger du skal loope før loopen istedenfor hver kjøring. for ($i = 0, $t = count($arr); $i < $t; ... Det har du helt rett i, men jeg ville faktisk foretrekke å lese kode med $index fremfor $i og $t selv om den talte hver runde... Lenke til kommentar
Alex Moran Skrevet 6. oktober 2010 Del Skrevet 6. oktober 2010 Det er klart at gode og beskrivende variabelnavn er alfa-omega for god lesbarhet, men bruk av $i som indeks i løkker er en såpass innarbeidet standard at den ville jeg ikke klaget for mye på. Lenke til kommentar
BlueEAGLE Skrevet 6. oktober 2010 Del Skrevet 6. oktober 2010 Det er klart at gode og beskrivende variabelnavn er alfa-omega for god lesbarhet, men bruk av $i som indeks i løkker er en såpass innarbeidet standard at den ville jeg ikke klaget for mye på. Hvis man aldri vil ha behov for å vite hva den indeksen representerer og jeg kan ikke komme på et eneste gyldig argument for å bruke $i fremfor $change_index eller $member_counter. Det forbauser meg egentlig veldig at så mange tutorialer og lærebøker bruker enkelbokstaver i variabelnavn når de skal forklare konsepter når det i de fleste tilfeller for en nybegynner ville være mer forståelig om variabelnavnet faktisk var et ord. Hvis vi ser på php-manualens eksempel 4 for for-løkker så er det for ($i = 1, $j = 0; $i <= 10; $j += $i, print $i, $i++); Bruk litt tid på å se på den koden og finn ut hva den gjør. Så gjør du det samme med koden under og fortell meg hvilken av de to du bruker lengst tid på å forstå. for ($counter = 1, $counter_sum = 0; $counter <= 10; $counter_sum += $counter, print $counter, $counter++); Det er dobbelt så mye kode men den krever en fjerdedel av kaloriene å forstå når koden leses. Når man tenker på at brukermanualens kodestil ofte blir kopiert av nybegynnere så taler denne typen eksempler mot sin hensikt. Spesielt hvis nybegynneren ikke forstår hva som skjer og følgelig ikke ser verdien i muligheten som blir beskrevet. 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å