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

Compare with Current View Page History

« Previous Version 25 Next »

Læringsmål:

  • Structs
  • Utskrift
  • Input/Output
  • Betingelser
  • While-løkker

Pensum:

  • 3.3 - Input and Output
  • 3.7 - User-Defined Functions That Return a Single Value
  • 4.1 - The if statement
  • 4.2 - The if-else statement
  • 4.3 - Nested if-else statements
  • 5.3 - While loops
  • 8.2 - Structures 

a), b) og c) av denne oppgaven gjøres i Cody Coursework!

 

d)

Lag funksjonen printPerson(person). Den tar inn en personstruktur som parameter og skriver ut navn, fødselsdato og telefonnummeret til person.
Utskriften skal se slik ut:

Avogadro, 09.08.1776, 60221413

Tips: Gjenbruk tidligere funksjoner.

e)

Lag funksjonen promptPerson(). Denne ber brukeren om navn, dag, måned, år og telefonnummer. Funksjonen skal returnere en personstruktur med gitt navn, fødselsdag og telefonnummer.
Eksempel på et kall av denne funksjonen: 

>> promptPerson	
Hva heter du? Avogadro
Hvilken dag er du født?	09
Hvilken måned er du født? 08
Hvilket år er du født? 1776
Hva er telefonnummeret ditt? 60221413
 
ans = 
 
          name: 'Avogadro'
    dateOfBirth: [1x1 struct]
          phone: 60221413

f)

Lag funksjonen getAge(person), som tar inn en person-struct som parameter og returnerer alderen til personen.
Dagens dato finnes slik: [Y M D] = datevec(now);

getAge ( struct ('name', 'Per', 'dateOfBirth', struct ('day', 20, 'month', 5, 'year', 1992), 'phone', 41545045 ) ) % skal returnere 23

getAge ( struct ('name', 'Mis', 'dateOfBirth', struct ('day', 30, 'month', 10, 'year', 1994), 'phone', 94255783 ) ) % skal returnere 21

g)

Lag funksjonen batchRegisterPersons(). Denne ber brukeren om å registrere en person. Deretter skal funksjonen spørre om brukeren vil registrere flere personer og gjenta dette til brukeren er ferdig. Da skal en vektor med de registrerte personene returneres.
Eksempel på kall av funksjonen:

Hva heter du? Erling
Hvilken dato er du født? 18
Hvilken måned er du født? 4
Hvilket år er du født? 1994
Hva er telefonnummeret ditt? 48151623
Skal du registrere flere personer (ja/nei)? ja
Hva heter du? Mis
Hvilken dato er du født? 30
Hvilken måned er du født? 10
Hvilket år er du født? 1994
Hva er telefonnummeret ditt? 94255783
Skal du registrere flere personer (ja/nei)? nei
 
ans =
 
1x2 struct array with fields:
    name
    dateOfBirth
    phone

h)

Lag funksjonen listPersons(listOfPersons) som tar enn en vektor med person-structer som parameter og skriver ut hver person på samme måte som i  oppgave d)

  • No labels