You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 26 Next »

Læringsmål:

  • If-setninger
  • Tilfeldige tall

Pensum

  • Kap 1.6
  • Kap 2.1.3
  • Kap 3.7
  • Kap 4.1 - 4.3


En sprø professor på Dragvoll har et frivillig fag om "tilfeldighet". Han bedømmer eksamen etter to faktorer: En tilfeldig poengsum og en svært uformell gruppering av håndskrift: fin eller stygg. Fin skrift trekker en hel karakter opp, stygg skrift trekker ned en hel karakter. Han gir ikke ut karaktere over A eller mindre enn F. 
Det skal lages et program som skriver ut: "Du fikk 89 poeng på eksamen, en B. Fordi du skrev stygt ble dette en C.". 
Dette gjøres ved å bryte ned problemet i mindre deler. 

a) Lag en funksjon som gir returnerer en karakter basert på et antall poeng. Prototypen skal se slik ut: "function [grade] = num2grade(points);" Poenggrensene er som følger:

ABCDEF
100-8988-7776-6564-5352-4140-0

Skriv ut en feilmelding om antall poeng ikke er et heltall eller er utenfor skalaen. 

b) Skriv funksjonen evaluateGrade. Den skal ha to parametre: en poengsum (heltall) og en streng for kvaliteten på håndskriften, 'fin' eller 'stygg'. Tips: Bruk num2grade og det at 'B' + 1 = 'A'.

c) Det er behov for en funksjon randomGrade som generer en tilfeldig poengsum (heltall!) fra 0 til 100, og returnerer denne. Lag denne og test at den funker med: num2grade(randomGrade)

d) Lag også en funksjon randomHandW som returnerer en tilfeldig håndskrift, 'fin' eller 'stygg'.

e) num2grade, evaluateGrade, randomHandW og randomGrade skal settes sammen. grades().

     Eksempel på kjøring av grades():

         grades()

                   Du fikk 70 poeng på eksamen, en C. Fordi du skrev fint ble dette en B.

  • No labels