...
Lag et script som skriver ut en hilsen som passer nåværende klokkeslett når det kjøres.
Videoforklaring (
...
12:
...
45)
Widget Connector |
---|
url | https://www.youtube.com/watch?v=7Cxe3-oduHg |
---|
|
Løsningsforslag
Expand |
---|
title | Hvis du har prøvd selv, trykk her for å se svaret... |
---|
|
Code Block |
---|
| h = hour(datetime('now'));
m = minute(datetime('now'));
if h < 4 || h >= 22
disp('God natt');
elseif h < 9
disp('God morgen');
elseif h < 14 || h == 14 && m < 30
disp('God formiddag');
elseif h < 19 || h == 19 && m < 30
disp('God ettermiddag');
else
disp('God kveld');
end |
For å få scriptet til å kjøre ved oppstart av Matlab, plasser scriptet i den mappen som Matlab har oppe (i vinduet til venstre i programmet) når Matlab starter. Scriptet må hete startup.m for at det skal fungere. |
Oppgave 3.2.2: Konverter fra romersiffer
Lag en funksjon som kan konvertere fra et romersiffer til den tilsvarende tallverdien. Konverteringstabellen er oppgitt under. Avslutt med en feilmelding hvis et ugyldig romersiffer gis inn.
Videoforklaring (
...
5:
...
38)
Widget Connector |
---|
url | https://www.youtube.com/watch?v=iA0q4hXxeBE |
---|
|
Løsningsforslag
Expand |
---|
title | Hvis du har prøvd selv, trykk her for å se svaret... |
---|
|
| | function tall = fra_romersiffer(romersiffer)
switch romersiffer
case 'I'
tall = 1;
case 'V'
tall = 5;
case 'X'
tall = 10;
case 'L'
tall = 50;
case 'C'
tall = 100;
case 'D'
tall = 500;
case 'M'
tall = 1000;
otherwise
error('Ugyldig romersiffer');
end
end | |
Oppgave 3.2.3: Skreddersydd Fahrenheit-oversikt
...
Utdelt kode
fahrenheit.m
cels2fahr.m
Videoforklaring (
...
14:
...
58)
Widget Connector |
---|
url | https://www.youtube.com/watch?v=5ICOgIAozhw |
---|
|
Løsningsforslag
Expand |
---|
title | Hvis du har prøvd selv, trykk her for å se svaret... |
---|
|
Code Block |
---|
| svar = input('Ønsker du å skrive inn egne Celsius-verdier? (ja/nei) ', 's');
if strcmp(svar, 'ja')
antall = input('Hvor mange verdier? ');
for i = 1:antall
celsius = input('Skriv inn Celsius-verdi: ');
skriv_ut_fahr(celsius);
end
else
skriv_ut_fahr(-20);
skriv_ut_fahr(0);
skriv_ut_fahr(18);
skriv_ut_fahr(37);
skriv_ut_fahr(100);
end | |
Oppgave 3.2.4: Finn elementposisjon i vektor
Lag en funksjon som som tar inn en vektor og en elementverdi, og som returnerer første posisjon hvor vektoren inneholder elementverdien. Hvis vektoren ikke innholder elementverdien, skal funksjonen returnere 0.
Videoforklaring (
...
11:
...
48)
Widget Connector |
---|
url | https://www.youtube.com/watch?v=H4ml6AuJbWk |
---|
|
Løsningsforslag
Expand |
---|
title | Hvis du har prøvd selv, trykk her for å se svaret... |
---|
|
| | function retur = finn_verdi(vektor, verdi)
for i = 1:length(vektor)
if vektor(i) == verdi
retur = i;
return;
end
end
retur = 0;
end | |
Oppgave 3.2.5: Konverter fra romertall
...
Utdelt kode
fra_romersiffer.m
Videoforklaring (
...
11:
...
37)
Widget Connector |
---|
url | https://www.youtube.com/watch?v=TWmmYzsgH54 |
---|
|
Løsningsforslag
Expand |
---|
title | Hvis du har prøvd selv, trykk her for å se svaret... |
---|
|
Code Block |
---|
| function retur = fra_romertall(romertall)
retur = 0;
for i = 1:length(romertall)
verdi = fra_romersiffer(romertall(i));
if i < length(romertall) && verdi < fra_romersiffer(romertall(i+1))
retur = retur - verdi;
else
retur = retur + verdi;
end
end
end | |
Oppgave 3.2.6: Eksamensoppgave
Skriv en funksjon trizero
som tar inn en tabell A
med like mange rader som kolonner og et flagg (logisk variabel) upper
. Hvis upper == true
skal alle elementene over hoveddiagonalen nullstilles og hvis upper == false
skal alle elementene under hoveddiagonalen nullstilles. Resten av elementene skal beholde sin opprinnelige verdi. Hele tabellen skal returneres etter nullstilling av de angitte elementer. Returner en tom tabell hvis antall rader ikke er lik antall kolonner i inngangstabellen A
. Se også figur 1.
Videoforklaring (mm:ss)
Løsningsforslag
Expand |
---|
title | Hvis du har prøvd selv, trykk her for å se svaret... |
---|
|
| | function retur = trizero(A, upper)
if size(A, 1) ~= size(A, 2)
retur = [];
return;
end
N = size(A, 1);
for i = 1:N-1
if upper
A(i, i+1:N) = 0;
else
A(i+1:N, i) = 0;
end
end
retur = A;
end | |
Oppgave x.y.z: Tittel
Utdelt kode
...