Læringsmål:
- Bruk av True/False (1/0)
- Logiske operatorer
Pensum
- 3.7.1 - 3.7.3
- Kap 1.3
- Kap 1.6
- Kap 4.1 - 4.3
a)
Lag funksjonen isInteger(N)
. Funksjonen tar inn et tall som parameter og returnerer true (1) eller false (0)
a) Det gies to tall. Lag en funksjon compareNr som sammenligner to tall. Den skal returnere true eller false, altså 1 eller 0, om tallene er like eller ei. Du får ikke lov til å bruke ==.
b) Lag funksjonen wholeNumber. Funksjonen tar inn ett tall og returnerer 1 eller 0 om tallet er et heltall eller ei.
Hint: bruk Matlabs innebygde funksjon round
.
Code Block | ||||
---|---|---|---|---|
| ||||
>> isInteger(5) ans = 1 >> isInteger(1.12) ans = 0 |
b)
Lag funksjonen isEven(N)
c) Lag funksjonen evenNumber. Den skal returnere "den boolske verdien true" om et tall er partall eller "false" for oddetall .d) Lag en funksjon som og tall som ikke er heltall.
Hint: bruk isInteger(N)
for å sjekke om tallet er et heltall.
Code Block | ||||
---|---|---|---|---|
| ||||
>> isEven(1)
ans =
0
>> isEven(2)
ans =
1
>> isEven(6)
ans =
1 |
c)
Lag funksjonen isPositive(N)
, som avgjør om et tall er positivt eller negativt. Den skal returnere true dersom tallet er positivt, og false dersom det er negativt.
For simpelhetens skyld lar vi 0 være et positivt tall.
...
e) Sett sammen funksjonene slik at programmet ser ca slik ut:
Code Block | ||||
---|---|---|---|---|
| ||||
>> isPositive(-1)
ans =
0
>> isPositive(0)
ans =
1
>> isPositive(5)
ans =
1 |
d)
Lag et program (script) som leser inn et tall fra brukeren, klassifiserer tallet med funksjonene du lagde i oppgave a)-c), og skriver ut en beskrivelse av tallet til skjermen.
Code Block | ||||
---|---|---|---|---|
| ||||
>> misScript
Oppgi et tall: -5.2
Tallet |
...
er ikke et heltall |
...
Tallet er |
...
negativt >> misScript Oppgi et tall: 4 |
...
Tallet er et heltall |
...
Tallet er et partall |
...
Tallet er positivt >> misScript Oppgi et tall: 5 Tallet er et heltall Tallet er et oddetall Tallet er positivt |
e)
Lag en funksjon compare(A,B)
som tar inn to tall som parametre, og sammenlikner disse.
...
Den skal returnere true dersom tallene er like, og false ellers. Det er ikke lov å bruke ==, men andre operatorer er lov.
Code Block | ||||
---|---|---|---|---|
| ||||
>> compare(3,4)
ans =
0
>> compare(3,3)
ans =
1 |