Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

Læringsmål:

...

  • For-løkker

Pensum:

  • Kap 5.4

 

Code Block
languagenone
Oktober 2014
ma ti on to fr lo so
       1  2  3  4  5
 6  7  8  9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

...

  1. Månedsnavn og årstall. Første rad.
  2. Dagsnavn. Andre rad.
  3. Datoer for alle dager på riktig plass. Tredje til syvende rad. 

 

 

Andre rad er en enkel iterasjon gjennom en liste av navn på dagene. De siste radene er mer bry: Disse utgjør en 6x7 matrise hvor radene er uker og kolonnene er ukedager. Denne matrisen kan se slik ut: 

...

Tallet 0 representerer dager som ikke nnes finnes i måneden.
Neste steg er å denere definere en funksjon som lager denne matrisen. Det gjør følgende funksjon:

...

Her returnerer funksjonen daysInMonth antall dager i måned, getMonthStartDay returnerer nummeret på den første ukedagen i måneden (1 = Mandag, 2 = Tirsdag, ..., 7 = Søndag). I eksempelet med oktober 2014, returnerer daysInMonth 31 og getMonthStartDay 3.


a)

Gitt startDay = 7 og numDays 30. Gå gjennom funksjonen over og skriv ned verdien til variablene week, day og date for hver iterasjon i den indre for løkken. 

Iterasjonweekdaydate

1
2
...
12 

1
...
...
... 
1
...
...
... 
0
...
...
...