Récapitulatif - Liste de produits
Fait partie de la section Fondamentaux du Journey R de Coddy — leçon 75 sur 78.
Défi
FacileVous recevrez quatre lignes d'entrée :
- Un nom de produit (par exemple,
Wireless Headphones) - Un prix (par exemple,
79.99) - Une quantité en stock (par exemple,
25) - Un pourcentage de remise à appliquer (par exemple,
20)
Effectuez les opérations suivantes :
- Créez une liste nommée appelée
productavec les éléments :name(caractère),price(numérique),stock(numérique), etavailable(défini surTRUEsi le stock est supérieur à 0, sinonFALSE) - Affichez le nom du produit en utilisant l'opérateur
$ - Calculez le prix après remise (prix d'origine moins le pourcentage de remise) et mettez à jour l'élément
price - Ajoutez un nouvel élément appelé
discountedavec la valeurTRUE - Réduisez le
stockde 1 (simulant un achat) - Supprimez l'élément
availablede la liste - Affichez la liste finale
Par exemple, si les entrées sont :
Smart Watch
150
10
25La sortie devrait être :
[1] "Smart Watch"
$name
[1] "Smart Watch"
$price
[1] 112.5
$stock
[1] 9
$discounted
[1] TRUEExplication :
- Prix d'origine 150 avec 25% de remise : 150 - (150 * 25/100) = 112.5
- Le stock est réduit de 10 à 9
- L'élément
availablea été supprimé de la liste finale
Essayez vous-même
# Lire l'entrée
con <- file("stdin", "r")
product_name <- suppressWarnings(readLines(con, n = 1))
price <- as.numeric(suppressWarnings(readLines(con, n = 1)))
stock <- as.numeric(suppressWarnings(readLines(con, n = 1)))
discount_percentage <- as.numeric(suppressWarnings(readLines(con, n = 1)))
close(con)
# TODO: Écrivez votre code ci-dessous
# 1. Créer une liste nommée 'product' avec les éléments : name, price, stock, et available
# 2. Afficher le nom du produit en utilisant l'opérateur $
# 3. Calculer le prix après remise et mettre à jour l'élément price
# 4. Ajouter un nouvel élément nommé 'discounted' avec la valeur TRUE
# 5. Réduire le stock de 1
# 6. Supprimer l'élément 'available' de la liste
# 7. Afficher la liste finaleToutes 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 dynamique11Vecteurs
Créer des vecteurs avec c()Accéder aux éléments d'un vecteurModifier des vecteursOpérations sur les vecteursRécapitulatif - Vecteur de prixRécapitulatif - Vecteur inverséVecteurs nommés14Les listes en R
Créer des listesAccéder aux éléments d'une listeModifier des listesListes nomméesRécapitulatif - Liste de produits3Opé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