Récapitulatif - Saisie dynamique
Fait partie de la section Fondamentaux du Journey R de Coddy — leçon 45 sur 78.
Défi
FacileLisez les nombres de l'entrée un par un jusqu'à ce que l'utilisateur saisisse "end". Pour chaque nombre, vérifiez s'il est positif ou négatif. Tenez à jour deux compteurs distincts : un pour les nombres positifs et un pour les nombres négatifs. Le zéro ne doit être compté dans aucune des deux catégories.
Une fois la boucle terminée (lorsque "end" est saisi), affichez les compteurs sur des lignes séparées en utilisant cat() dans ce format :
Positive: X
Negative: YOù X est le nombre de nombres positifs et Y est le nombre de nombres négatifs.
Par exemple, si les entrées sont :
5
-3
0
8
-1
-7
endLa sortie devrait être :
Positive: 2
Negative: 3Les nombres positifs sont 5 et 8 (total : 2). Les nombres négatifs sont -3, -1 et -7 (total : 3). Le zéro n'est pas compté.
Essayez vous-même
# Lire l'entrée depuis stdin
con <- file("stdin", "r")
# Initialiser les compteurs
positive_count <- 0
negative_count <- 0
# TODO: Écrivez votre code ici
# Utiliser une boucle repeat pour lire les nombres jusqu'à ce que "end" soit saisi
# Pour chaque entrée :
# - Vérifier s'il s'agit de "end" pour interrompre la boucle
# - Convertir en nombre et vérifier s'il est positif ou négatif
# - Mettre à jour le compteur approprié (ne pas compter zéro)
# Afficher les résultats
cat("Positive:", positive_count, "\n")
cat("Negative:", negative_count, "\n")Toutes les leçons de Fondamentaux
4Opérateurs - Partie 2
Opérateurs logiques (AND, OR)Opérateurs logiques - Partie 2 (NOT)Récapitulatif - Logique simpleLogique vectorisée - Partie 1Logique vectorisée - Partie 27Calculateur de partage d'addition
Message de bienvenueRécupérer la saisie utilisateur10FizzBuzz avec une variante
Présentation du jeuLa fonction FizzBuzz2Variables et types de données
Type de données numériqueType de données entierType de données caractèreType de données logiqueVérification des types de donnéesConventions de nommageValeurs manquantes : NARécapitulatif - Création de variables8Boucles
Boucle ForBoucle WhileBreakSuivant (Continue)Récapitulatif - FactorielleGénération de séquences (seq, :)Boucles imbriquéesRécapitulatif - Saisie dynamique3Opérateurs, partie 1
Opérateurs arithmétiquesDivision entière et moduloOpérateurs d'affectationRécapitulatif - Mathématiques simplesOpérateurs de comparaison6Entrées/Sorties de base
Affichage avec PrintCat pour l'affichageAffichage avec des variablesLire l'entrée avec readline()Bases de la conversion de typesRécapitulatif - Calculateur d'âgeRécapitulatif - Vrai ou Faux9Fonctions
Déclarer une fonctionArguments de fonctionValeurs de retourRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs de paramètres par défaut