Menu
Coddy logo textTech

Planificateur de budget

Fait partie de la section Logique et flux d’exécution du Journey R de Coddy. Leçon 63 sur 64.

challenge icon

Défi

Difficile

Complétez budget(lines). La première ligne est l’en-tête month,type,amount et chaque ligne suivante correspond à une entrée, comme 2024-01,income,3000. Une entrée est valide lorsque son type est income ou expense et que son montant est un nombre supérieur à 0 ; ignorez toute autre entrée.

Renvoyez une ligne par mois présent dans les entrées valides, dans l’ordre, 2024-01: income 3000.00, spent 1250.50, saved 1749.50, où saved correspond aux revenus moins les dépenses (un mois sans revenus ou sans dépenses compte 0 pour ceux-ci). Ajoutez ensuite Best month: avec le mois ayant réalisé les économies les plus importantes (le premier en cas d’égalité), puis Skipped: avec le nombre d’entrées ignorées.

Lorsqu’aucune entrée n’est valide, renvoyez uniquement No valid entries et la ligne Skipped.

Le code fourni transmet chaque ligne d’entrée à budget() et affiche chaque ligne renvoyée.

Essayez vous-même

budget <- function(lines) {
  # Écrivez votre code ici
  character(0)
}

# Code d'entrée/sortie fourni : conservez-le tel quel
input <- suppressWarnings(readLines(file("stdin")))
cat(budget(input), sep = "\n")

Toutes les leçons de Logique et flux d’exécution

Entraînez-vous par vous-même : Compilateur R en ligne