Menu
Coddy logo textTech

Planer budżetu

Część sekcji Logika i przepływ sterowania ścieżki R w Coddy. Lekcja 63 z 64.

challenge icon

Wyzwanie

Trudny

Uzupełnij budget(lines). Pierwszy wiersz to nagłówek month,type,amount, a każdy kolejny wiersz to jeden wpis, taki jak 2024-01,income,3000. Wpis jest prawidłowy, gdy jego typ to income lub expense, a jego kwota jest liczbą większą od 0; pomiń wszystkie pozostałe wpisy.

Zwróć po jednym wierszu dla każdego miesiąca w prawidłowych wpisach, w kolejności, 2024-01: income 3000.00, spent 1250.50, saved 1749.50, gdzie saved oznacza przychód pomniejszony o wydatki (miesiąc bez przychodu lub wydatków liczy się jako 0 w danej kategorii). Następnie dodaj Best month: z miesiącem, w którym zaoszczędzono najwięcej (jeśli kilka miesięcy ma ten sam wynik, wybierz pierwszy), oraz Skipped: z liczbą pominiętych wpisów.

Jeśli żaden wpis nie jest prawidłowy, zwróć tylko No valid entries oraz wiersz Skipped.

Dostarczony kod przekazuje każdy wiersz wejściowy do budget() i wyświetla każdy zwrócony wiersz.

Spróbuj swoich sił

budget <- function(lines) {
  # Wpisz tutaj swój kod
  character(0)
}

# Dostarczony kod wejścia/wyjścia: pozostaw go bez zmian
input <- suppressWarnings(readLines(file("stdin")))
cat(budget(input), sep = "\n")

Wszystkie lekcje w sekcji Logika i przepływ sterowania

Poćwicz samodzielnie: Kompilator R online