Récapitulatif – Classificateur de notes
Fait partie de la section Logique et Flux du Journey Ruby de Coddy. Leçon 42 sur 56.
Combinez case à valeurs multiples, l’opérateur ternaire et les modificateurs en ligne pour classer les notes d’examen dans un script court.
Défi
MoyenLisez une liste de scores entiers séparés par des virgules à partir de l’entrée. Pour chaque score, affichez une ligne :
<score>: <letter> (<status>)Où letter provient d’un case appliqué au score :
90..100→A80..89→B70..79→C60..69→D- tout autre score →
F
Et status utilise un opérateur ternaire : passing lorsque le score est supérieur ou égal à 60, et failing dans le cas contraire.
Après la boucle, affichez Top scorer: <score> : mais uniquement si le score maximal est supérieur ou égal à 90 (utilisez un if inline).
Pour l’entrée 95,72,55,88, la sortie est :
95: A (passing)
72: C (passing)
55: F (failing)
88: B (passing)
Top scorer: 95Essayez vous-même
scores = gets.chomp.split(",").map(&:to_i)
# À FAIRE : pour chaque score, afficher "<n> : <lettre> (<statut>)"
# À FAIRE : afficher "Top scorer: <max>" uniquement si max >= 90
Toutes les leçons de Logique et Flux
1Les chaînes de caractères en profondeur
Aperçu des méthodes de chaînesInterpolation de chaînesParcourir les chaînesSplit et JoinRécapitulatif - Tisseur de chaînes4Blocs, Procs et Lambdas
Qu'est-ce qu'un bloc ?do..end ou accoladesLe mot-clé yieldParamètres de blocProcs et LambdasRécapitulatif - Itérateur personnalisé7Hashes, 2e partie
Hash.new avec valeurs par défautParcourir les hashesHashes imbriquésFusionner et transformerRécapitulatif - Compteur de fréquences10Projet - Dossiers des étudiants
Présentation du projetAjouter un étudiant2Plages
Qu’est-ce qu’une plage ?Méthodes des plagesPlages dans Case / WhenRécapitulatif - Exercices sur les plages5Puissance des Enumerable
Select et RejectChaînage de MapReduce / Injectcount, all?, any?, none?group_by et partitionsort_by, min_by, max_byRécapitulatif - Pipeline de données8Prise de décision avancée
Case avec classes et regexwhen à plusieurs valeursOpérateur ternaireif / unless en ligneRécapitulatif – Classificateur de notesEntraînez-vous par vous-même : Compilateur Ruby en ligne