Webbserverprogrammering 1 · område 2 · lektion 10–11
Loopar, listor och arrayer
Sju övningar om kod som körs flera gånger och om samlingar av
värden. Flera av dem säger uttryckligen att du inte får använda den
färdiga metoden – Sum(), Max() – för att du ska se vad
den gör innan du får slippa skriva den. De ligger alla på
/ovningar/loopar i ditt projekt.
Lektion 10 var genomgången och lektion 11 eget arbete. Så här tar du igen det, räkna med drygt två timmar:
- Läs guidens steg 10 till 13 och skriv av
koden.
for,foreach,while,List<T>och en tabell byggd av en loop. - Lös övning 15 till 21 nedan, i ordning.
- Fastnar sidan och terminalen hänger: du har en
whilevars villkor aldrig blir falskt. Ctrl+C, och läs villkoret en gång till.
Ska du samla ihop ett värde – en summa, ett största tal, en räknare – måste
variabeln deklareras före loopen. Lägger du int summa = 0;
inuti loopen nollställs den varje varv, och svaret blir det sista värdet i
stället för summan. Det är det vanligaste felet i hela det här temat.
15. Tio rader
Lätt · tränar: for och att skriva ut i markupen
Skriv ut talen 1 till 10, ett per rad, med en for-loop.
Klart när: tio rader visas, den första är 1 och den sista är 10.
16. Listan
Lätt · tränar: List<string> och foreach
Skapa en lista med minst fem texter. Rendera dem som en punktlista och skriv ut hur många de är.
Klart när: alla värden syns och antalet stämmer med Count.
17. Summan för hand
Medel · tränar: att samla ihop ett värde i en loop
Skapa en List<int> med minst sex tal. Räkna ut summan och
medelvärdet utan att använda Sum() eller
Average().
Medelvärdet ska visa decimaler.
Klart när: dina tal ger rätt summa, och medelvärdet stämmer om du räknar efter med miniräknare.
18. Numrerad lista
Medel · tränar: for med index och @(i + 1)
Rendera samma lista som i övning 16, men numrerad: "1. Drama", "2. Thriller" och så vidare. Numret ska vara ett mer än platsen i listan.
Klart när: första raden är 1, inte 0.
19. Det största talet
Medel · tränar: att jämföra i en loop och hålla kvar ett värde
Hitta det största talet i en List<int> utan att använda
Max().
Klart när: svaret stämmer, också om det största talet ligger först i listan.
20. Bara de långa
Medel · tränar: villkor inuti en loop
Gå igenom en lista med speltider och visa bara de som är 120 minuter eller mer. Visa också hur många av dem det blev.
Klart när: rätt värden visas och räknaren stämmer med antalet visade rader.
21. Multiplikationstabellen
Svår · tränar: nästlade loopar och att bygga en HTML-tabell
Rendera multiplikationstabellen för 1 till 5 som en riktig
<table>: en rad per tal, en kolumn per tal, och produkten i
cellen.
Den yttre loopen gör raderna, den inre gör cellerna.
Klart när: tabellen har fem rader och fem kolumner, och cellen där rad 3 möter kolumn 4 visar 12.
Avprickning
Kryssen sparas i din webbläsare.