Zacznij terazZacznij za darmo

Wczesny powrót z funkcji

Czasami nie trzeba przechodzić przez całe ciało funkcji, żeby uzyskać wynik. W takim przypadku możesz zakończyć jej działanie wcześniej, używając return().

Aby sprawdzić, czy x jest podzielne przez n, możesz użyć is_divisible_by(x, n) z pakietu assertive.

Alternatywnie skorzystaj z operatora modulo %%. Wyrażenie x %% n zwraca resztę z dzielenia x przez n, a więc x %% n == 0 sprawdza, czy x jest podzielne przez n. Wypróbuj 1:10 %% 3 == 0 w konsoli.

Aby rozwiązać to ćwiczenie, musisz wiedzieć, że rok przestępny to każdy rok podzielny przez 400 (np. rok 2000) lub każdy rok podzielny przez 4, który nie jest rokiem stulecia (np. 1904, ale nie 1900 ani 1905).

Pakiet assertive jest załadowany.

To ćwiczenie jest częścią kursu

Wprowadzenie do pisania funkcji w R

Zobacz kurs

Instrukcje do ćwiczenia

  • Uzupełnij definicję funkcji is_leap_year(), sprawdzając kolejno, czy year jest podzielny przez 400, 100, a następnie przez 4 – w każdym przypadku kończąc działanie funkcji wcześniej.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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
  ___
}
Edytuj i uruchom kod