Zusammenfassung - Produktliste
Teil des Abschnitts Grundlagen der R-Journey von Coddy — Lektion 75 von 78.
Aufgabe
EinfachSie erhalten vier Eingabezeilen:
- Ein Produktname (z. B.
Wireless Headphones) - Ein Preis (z. B.
79.99) - Eine Lagermenge (z. B.
25) - Ein anzuwendender Rabattprozentsatz (z. B.
20)
Führen Sie die folgenden Operationen aus:
- Erstellen Sie eine benannte Liste namens
productmit den Elementen:name(character),price(numeric),stock(numeric) undavailable(gesetzt aufTRUE, wenn der Lagerbestand größer als 0 ist, andernfallsFALSE) - Geben Sie den Produktnamen unter Verwendung des
$-Operators aus - Berechnen Sie den rabattierten Preis (Originalpreis abzüglich des Rabattprozentsatzes) und aktualisieren Sie das Element
price - Fügen Sie ein neues Element namens
discountedmit dem WertTRUEhinzu - Verringern Sie den
stockum 1 (Simulation eines Kaufs) - Entfernen Sie das Element
availableaus der Liste - Geben Sie die finale Liste aus
Zum Beispiel, wenn die Eingaben wie folgt lauten:
Smart Watch
150
10
25Die Ausgabe sollte wie folgt aussehen:
[1] "Smart Watch"
$name
[1] "Smart Watch"
$price
[1] 112.5
$stock
[1] 9
$discounted
[1] TRUEErklärung:
- Originalpreis 150 mit 25% Rabatt: 150 - (150 * 25/100) = 112.5
- Lagerbestand von 10 auf 9 reduziert
- Das Element
availablewurde aus der finalen Liste entfernt
Probier es selbst
# Eingabe lesen
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: Schreiben Sie Ihren Code unten
# 1. Erstellen Sie eine benannte Liste namens 'product' mit den Elementen: name, price, stock und available
# 2. Geben Sie den Produktnamen mit dem $-Operator aus
# 3. Berechnen Sie den rabattierten Preis und aktualisieren Sie das price-Element
# 4. Fügen Sie ein neues Element namens 'discounted' mit dem Wert TRUE hinzu
# 5. Reduzieren Sie den Lagerbestand (stock) um 1
# 6. Entfernen Sie das Element 'available' aus der Liste
# 7. Geben Sie die finale Liste ausAlle Lektionen in Grundlagen
4Operatoren Teil 2
Logische Operatoren (AND, OR)Logische Operatoren Teil 2 (NOT)Wiederholung – Einfache LogikVektorisierte Logik Teil 1Vektorisierte Logik Teil 27Rechnungs-Split-Rechner
WillkommensnachrichtBenutzereingaben abfragen10FizzBuzz mit einer Besonderheit
SpielübersichtDie FizzBuzz-Funktion13Vektoren für Fortgeschrittene
Vektor-Slicing und IndizierungLogische IndizierungVektorarithmetik & RecyclingDer %in%-Operator2Variablen und Datentypen
Numerischer DatentypGanzzahl-DatentypZeichen-DatentypLogischer DatentypDatentypen prüfenBenennungskonventionenFehlende Werte: NAZusammenfassung – Variablenerstellung5Entscheidungsfindung
If-AnweisungIf - ElseWiederholung - Einfacher TaschenrechnerVerschachteltes If - Else8Schleifen
For-SchleifeWhile-SchleifeBreakNext (Continue)Rückblick - FakultätSequenzgenerierung (seq, :)Verschachtelte SchleifenRückblick - Dynamische Eingabe11Vektoren
Vektoren mit c() erstellenZugriff auf VektorelementeVektoren modifizierenVektoroperationenWiederholung – Preis-VektorWiederholung – Umgekehrter VektorBenannte Vektoren14Listen in R
Listen erstellenZugriff auf ListenelementeListen modifizierenBenannte ListenZusammenfassung - Produktliste3Operatoren Teil 1
Arithmetische OperatorenGanzzahlige Division und ModuloZuweisungsoperatorenWiederholung - Einfache MathematikVergleichsoperatoren6Grundlagen der Ein- und Ausgabe
Print-AusgabeCat zur AusgabeAusgabe mit VariablenEingabe lesen mit readline()Grundlagen der TypumwandlungWiederholung – AltersrechnerWiederholung – Wahr oder Falsch9Funktionen
Funktionen deklarierenFunktionsargumenteRückgabewerteWiederholung - Sigma-FunktionWiederholung - ValidierungsfunktionStandard-Parameterwerte