Oppgave 1 - Kodeforståelse, løkker
tallrekke = input('Giinntallene ,omgittav []' ); antall = 0; s = length(tallrekke) % gir antall elementer i rekken for i = 2:s if tallrekke(i)==tallrekke(i-1) antall = antall + 1 end end disp(antall)
Hvilket tall blir skrevet ut når input er [0 0 0]?
a. 0 b. 1 c. 2Hvilket tall blir skrevet ut når input er [0]?
a. 0 b. 1 c. 2- Hvilket tall blir skrevet ut når input er [0 1 2 2 1 1]?
a. 1 b. 2 c. 3 - Hvilket tall blir skrevet ut når input er [1 2 3 3 3 3 5]?
a. 1 b. 2 c. 3
function uttabell = rdup(inntabell) j = 1; uttabell (j) = inntabell(1); s = length(inntabell) %ant. elem. i tabellen for i = 2:s if inntabell ( i ) ~= inntabell(i−1) j = j + 1; uttabell ( j ) = inntabell ( i ) ; end %if end %for end %function
- Hva blir rdup([0])?
a. [0] b. [0 1] c. [0 0] - Hva blir rdup([9 8 7 6 5])?
a. [9 8 7 6 5] b. [9 9 8 7 6] c. [9 9 9 9 9] - Hva blir rdup([9 8 8 7 6])?
a. [9 8 8 7 6] b. [9 8 7 6] c. [9 9 9 9 9] - Hva blir rdup([9 8 8 7 6 6 6])?
a. [9 8 9 8 7 6 7 8] b. [9 8 7 6] c. [9 9 9 9 9]
- Hva blir rdup([0])?
function svar = tell(tabell) antall = 1; while (antall < length(tabell)) && (tabell(antall+1) > tabell(antall)) antall = antall + 1; end svar = antall ; end %function
- Hva blir tell([0])?
a. 0 b. 1 c. 2 - Hva blir tell([0 1 4])?
a. 1 b. 2 c. 3 - Hva blir tell([0 3 4 2 1])?
a. 1 b. 2 c. 3 - Hva blir tell([2 5 6 7 6 7 8 9 11 24])?
a. 4 b. 6 c. 10 - Hva blir tell([95 90 91 92 93 94 101 104])?
a. 0 b. 1 c. 7
- Hva blir tell([0])?
Oppgave 2 - Høydemåler
Et utdrag fra tabellen kan være:
1893 | 1898 | 2010 | 1990 | 1769 | 1780 | ... |
1907 | 1960 | 2001 | 1760 | 1870 | 1800 | ... |
1910 | 1783 | 1840 | 2109 | 1902 | 1950 | ... |
1753 | 1840 | 1974 | 2150 | 1823 | 1880 | ... |
... | ... | ... | ... | ... | ... | ... |
Du har blitt bedt om å lage et Matlab-skript for å søke igjennom denne tabellen med høydedata og skrive ut en beskjed på skjermen dersom høyden i en celle er 2000 meter eller høyere.
- r =size(<tabellnavn>, 1); lagrer antall rader i tabellen i r
- k = size(<tabellnavn>, 2); lagrer antall kolonner i tabellen i k
- Lag et Matlab-skript som løser oppgaven.
- Gjør gjerne antagelser der du føler det mangler i oppgaveteksten.
- Dersom du ikke er komfortabel med bruken av size-funksjonen, anta heller at tabellen er 20 rader og 20 kolonner stor.
Vis hvordan du vil utvide skriptet slik at det helt til slutt skriver ut: “Maks høyde var:” etterfulgt av verdien til den maksimale høyden, og deretter “Koordinatene med maks høyde:”etterfulgt av koordinatene for det eller de punktene som har denne høydeverdien.
Hvis det er flere punkter som har den samme høyeste verdien, skal alle disse koordinatene skrives ut, men selve høyden skal bare skrives én gang.
Oppgave 3 - Formasjonsteknologi grunnkurs
- Flygeskolen skal avholde sin årlige eksamen i Formasjonsteknologi grunnkurs. I den sammenheng er det viktig for de fagansvarlige – stuntlektor Due og professor Kråke - å melde inn hvilke studenter som skal få ta eksamen. I år har deler av øvingsopplegget vært obligatorisk.
Det er totalt 12 øvinger i faget. Følgende regler gjelder for å få godkjent øvingsopplegg:- minst 5 av de 6 første øvingene må være godkjent (øvingene 1–6)
- minst 4 av de 6 siste øvingene må være godkjent (øvingene 7–12)
- minst én av øvingene 11 og 12 må være godkjent
Tabell 1 viser altså en student som har fått øvingene 1, 4, 5, 7, 8, 9 og 11 godkjent, hvilket ikke vil være tilstrekkelig for å få ta eksamen. Funksjonen skal returnere 1 hvis øvingsopplegget er godkjent og 0 hvis ikke, etter reglene beskrevet ovenfor. - Skriv et lite program for å teste funksjonen godkjent ved å kalle på denne med tre ulike test-tabeller som du finner på selv. Programmet skal for de tre forsøkene skrive ut tabellenog resultatet av funksjonskallet på skjermen.
Oppgave 4 - Litt om tabeller og løkker
- Opprett en tabell med 7 elementer, alle elementene skal være 0.
- Gjør disse endringene på tabellen:
- Legg tallet 1 på posisjon 1
- Legg tallet 1 på posisjon 2
- Legg tallet 2 på posisjon 3
- Legg tallet 3 på posisjon 4
- Legg tallet 5 på posisjon 5
- Tallet i posisjon 6 skal være summen av tallet i posisjon 4 og tallet i posisjon 5
- Tallet i posisjon 7 skal være summen av tallet i posisjon 5 og tallet i posisjon 6
- Hvordan ser innholdet i listen ut nå? (vet du hva denne tallrekken heter?
- Hvordan vil du lage en tabell med tallene 4 til 20 og skrittlengde 1,5
Oppgave 5 - Mer variabler, alder
Gitt følgende kodesnutt. Hva blir skrevet ut til skjermen?
tabell =zeros(1 ,7) ; tabell(1) = 3; tabell(7) = 5; tabell(2) = tabell(1) + tabell(7) ; tabell(3) = tabell(2)*5; tabell(1) = tabell(1)−3; tabell(4) = 3; tabell(5) = tabell(7)/5; tabell(6) = 2; disp(tabell);
Oppgave 6 - Tabeller, if-setninger og løkke
- Atle Johnny, Remi, Lars Geir, Tarmhild og Svetlana er akkurat passe gamle. Hver tirsdag konkurrerer de i éntimesløp.
Denne relativt ukjente idrettsgrenen består rett og slett i at man løper i én time. Den som har løpt lengst, vinner.
I denne oppgaven skal du skrive ut resultatene fra denne konkurransen ved hjelp av tabeller og løkker.
(Selv om oppgaven er delt opp i deloppgaver, er det meningen at du skal skrive alt i ett program)Lag en tabell
deltakernr
som inneholder nummerne 1 til 5. Lag en tabellkm
med plass til fem tall.Lag en tabell
alder
med plass til fem tallLegg inn fem tilfeldige tall i intervallet
[0, 15]
ikm
.Legg inn fem tilfeldige heltall i intervallet
[18, 25]
ialder
.Lag en løkke som skriver ut deltakernummer, alder og resultat til alle som løp lengre enn 8km:
Deltaker
deltakernr
eralder
år gammel og løpkm
km.
Lag en løkke som finner det totale antall km (sumkm) tilbakelagt i konkurransen, og skriv resultatet ut slik:
Deltakerne har tilsammen tilbakelagt
sumkm
km.