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
  • Funksjoner

Pensum

  • Kap 4.1 - The if statement
  • 4.2 - The if-else statement
  • 4.3 - Nested if-else statement
  • 5.1 - The FOR loop
  • 5.4 - Loops with Vectors and Matrices: VectorizingKap 5


a) 

Gitt følgende sang (med ukulele):

...

Nora har samlet en del mynter i sparegrisen. Mynttelleren gir en liste med verdier på hver mynt som telles, f.eks [20, 20, 10, 20 , 5, 1, 10] . Lag funksjonen countCoins(coinList) som tar inn en liste og returnerer antall 1, 5, 10 og 20-kronere i listen. Dette kan gjøres både med og uten for-løkke. Resultatet med den nevnte listen er [1,1,2,3].

c)

Endre litt på forrige oppgave: For hver tyvende mynt som telles skal summen av de ferdigtelte myntene skrives ut.  

Vil switch eller if-else være mest effektivt her?

Code Block
languagehtml/xml
titleEksempel på kjøring:
>> countCoins([20, 20, 10, 20 , 5, 1, 10])
ans =
     1     1     2     3
>> countCoins([1, 20, 10, 10 , 5, 1, 1, 20, 10, 5])
ans =
     3     2     3     2
>> countCoins([1, 20, 10, 10 , 5, 1, 1, 20, 10, 15])
Error using countCoins (line 14)
Kun gyldige mynter! 


c)

Lag en funksjon, sumCoins(coinList), som teller opp myntene og skriver ut hvor mange mynter som har blitt talt og hvor mye penger det var totalt.  

Tips: Kopier countCoins(coinList) og utvid den med en variabel som Tips: Lag en variabel, sum, som holder tellingen på hvor mye penger som har blitt iterert over. 

Code Block
languagehtml/xml
titleEksempel på kjøring:
>> sumCoins([20, 20, 10, 20 , 5, 1, 10])
Etter 7 mynter har vi talt opp 86 kroner
>> sumCoins([10, 20, 1, 20 , 5, 5, 20, 10, 5, 5, 5, 10, 1, 20, 20, 10])
Etter 16 mynter har vi talt opp 167 kroner
>> sumCoins([10, 20, 1, 20 , 5, 5, 20, 10, 5, 5, 5, 10, 1, 20, 20, 100])
Error using sumCoins (line 15)
Kun gyldige mynter!

 

 

 

d)

Nora kjøper middag hver dag på hangaren. Hun vil bruke de største myntene først. Lag en funksjon, coins(price) som skriver ut til brukeren hvor mange av hver mynt hun må ha med seg basert på hva middagen koster: 


Eksempel på kjøring av :

           >> coins(93):

       Antall 20-kroninger: 4
       Antall 10-kroninger: 1
       Antall 5-kroninger: 0
       Antall 1-kroninger: 3

...