早期リターン
答えを得るのに関数本体を最後まで実行する必要がない場合があります。そんなときは return() を使って、関数から早めに抜けることができます。
x が n で割り切れるかどうかは、assertive の is_divisible_by(x, n) を使って確認できます。
別の方法として、剰余演算子 %% を使います。x %% n は x を n で割った余りを返すので、x %% n == 0 なら x は n で割り切れます。コンソールで 1:10 %% 3 == 0 を試してみてください。
この演習を解くには、うるう年は400年ごと(たとえば2000年)か、100年ではない4年ごと(たとえば1904年。ただし1900年や1905年は含みません)であることを知っておく必要があります。
assertive は読み込まれています。
この演習はコースの一部です
R関数入門
演習の手順
is_leap_year()の定義を完成させてください。yearが400で割り切れる場合、次に100、次に4で割り切れる場合を順にチェックし、それぞれのケースで早期にreturnするようにします。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
is_leap_year <- function(year) {
# If year is div. by 400 return TRUE
if(___) {
return(___)
}
# If year is div. by 100 return FALSE
if(___) {
___
}
# If year is div. by 4 return TRUE
___
# Otherwise return FALSE
___
}