Récapitulatif - Plan de salle
Fait partie de la section Logique et flux d’exécution du Journey R de Coddy. Leçon 21 sur 64.
Défi
MoyenComplétez seat_report(seats). seats est une matrice de 0 (places libres) et de 1 (places occupées), avec une ligne par rangée du théâtre. Renvoyez :
- une ligne par rangée,
Row 1: 2 free Most free: rowsuivi de la rangée ayant le plus de places libres (la première en cas d’égalité)Occupied:suivi du pourcentage de places occupées, arrondi à l’entier le plus proche, et de%
Le code fourni lit une matrice sur une ligne : les rangées sont séparées par ; et les valeurs d’une rangée par , ; ainsi, 1,2;3,4 est une matrice dont les rangées sont 1 2 et 3 4. Le code affiche chaque ligne renvoyée.
Essayez vous-même
seat_report <- function(seats) {
# Écrivez votre code ici
character(0)
}
# Code d'entrée/sortie fourni : gardez-le tel quel
input <- suppressWarnings(readLines(file("stdin")))
parse_matrix <- function(line) {
rows <- strsplit(line, ";")[[1]]
matrix(as.numeric(unlist(strsplit(rows, ","))), nrow = length(rows), byrow = TRUE)
}
cat(seat_report(parse_matrix(input[1])), sep = "\n")
Toutes les leçons de Logique et flux d’exécution
1Les chaînes en profondeur
Sous-chaînes avec substr()Mise en forme avec sprintf()Scinder et joindreRechercher dans les chaînesRemplacer du texteRécapitulatif - Créateur de nom d'utilisateur4Matrices
Créer des matricesIndexer des matricesRécapitulatifs des lignes et des colonnesArithmétique matricielleRécapitulatif - Plan de salle7La famille Apply
lapply et sapplyMap et mapplyFilter et FindReduceRécapitulatif - Pipeline de données10Structures de contrôle avancées
La fonction switch()ifelse() vectorisérepeat et breakFonctions récursivesRécapitulatif – Classificateur de notes2Recherches par clé-valeur
Recherches dans des vecteurs nommésVérifier les clésAjouter et supprimer des clésParcourir les nomsRécapitulatif - Bureau des stocks5Projet - Carnet de notes
Ajouter des élèvesEnregistrer les notes3Ensembles et comptage
Valeurs uniquesOpérations sur les ensemblesTests d’appartenanceCompter avec table()Récapitulatif - Invités à l’événement6Les fonctions comme valeurs
Fonctions anonymesPasser des fonctionsRetourner des fonctionsFermetures avec étatRécapitulatif - Règles de remise9Data Frames
Créer des Data FramesColonnes et lignesFiltrer les lignesAjouter et trierRécapitulatif - Rapport des ventes12Projet - Suivi des dépenses
Enregistrer les dépensesDépenses totalesEntraînez-vous par vous-même : Compilateur R en ligne