a)
Code Block |
---|
|
function days = daysInMonth(monthNumber)
switch ( monthNumber )
case {1, 3, 5, 7, 8, 10, 12}
days = 31;
case {4, 6, 9, 11}
days = 30;
case 2
days = 28;
otherwise
days = 0;
end
end |
...
Code Block |
---|
|
function resbool = isLeapYear ( year )
ifbool mod= (year , 4) ==> 0
&& % mod (a, b) gir resten dersom a deles på b.
% Dersom mod (year , 4) er lik== 0, er&& year delelig på 4
if mod (~mod(year , 100) == 0
if mod || mod(year , 400) == 0);
end
|
Da blir den oppdaterte daysInMonth-funksjonen slik:
Code Block |
---|
|
function res = true ; % Delelig paa 4, 100 og 400days = daysInMonth(monthNumber, year)
switch (monthNumber)
case {1, 3, 5, else
7, 8, 10, 12}
resdays = false31;
; % Delelig paacase {4, og6, 100 9, men11}
ikke 400
days = end30;
elsecase 2
resdays = true ; % Delelig paa 4, men ikke 10028 + isLeapYear(year);
otherwise
end
else
resdays = false ; % Ikke delelig på 40;
end
end |
Eneste endringen som trengs er at februar nå må sjekke om det er skuddår i år, og så legge til verdien til funksjonen isLeapYear:
Code Block |
---|
|
...
case 2
days = 28 + isLeapYear(year);
case 3 |
Det betyr at daysInMonth må ta inn year som argument også