Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Læringsmål:

  • Switch
  • For-løkker

Pensum

  • Kap 4.4 - The switch Statement
  • Kap 5.1 - The FOR loop


a) 

I) Hva gjør funksjonen nedenfor?
II) Hva er input/parametre, output og funksjonsnavn i denne funksjonen?

 

Code Block
languagehtml/xml
titlemovieName
function name = movieName(number)
    switch(number)
        case 1
            name = 'Harry Potter og de vises stein';
        case 2
            name = 'Harry Potter og mysteriekammeret';
        case 3
            name = 'Harry Potter og fangen fra Azkaban';
        case 4
            name = 'Harry Potter og ildbegeret';
        case 5
            name = 'Harry Potter og Føniksordenen';
        case 6
            name = 'Harry Potter og halvblodsprinsen';
        case 7
            name = 'Harry Potter og dødstalismanene - del 1';
        case 8
            name = 'Harry Potter og dødstalismanene - del 2';
        otherwise
            name = 'Ikke et gyldig filmnummer (enda)';
    end
end


 

      lll lll)  Hva skjer hvis du har lagret funksjonen og kjører movieName(3) i kommandovinduet?

 

b) 

En      l) En gang for lenge siden stod det bare romnavn på dørene i p15. En forvirret student hadde kun fått tilsendt romnummer av sin studass, og ville gjerne ha godkjent øving 3, men visste ikke hvor hun skulle gå.      

Hjelp studenten ved å lage en funksjon, num2name(number), som tar inn et romnummer og returnerer romnavnet. Dersom det skrives inn et ugyldig romnummer skal det returneres en høyst valgfri feilmelding. Oppgaven Oppgaven SKAL utføres med switch. På p15 finnes rommene: 424 Vembi, 421 Rall, 414 Gorg og 411 Rill.

Code Block
languagehtml/xml
titleEksempel på kjøring:
>> num2name(424)
ans =
Vembi
>> num2name(100)
Error using num2name (line 11)
Din stud.ass har prøvd å lede deg på ville veier. Kontakt Und.Asseneassene umiddelbart for å bli reddet.!

 

    ll) Hvorfor er SWITCH et mye bedre alternativ til denne oppgaven enn IF/ELSE/ELSEIF?

...