Rückblick – Produktliste
Teil des Abschnitts Grundlagen der R-Journey von Coddy. Lektion 75 von 78.
Aufgabe
EinfachDu erhältst vier Eingabezeilen:
- Einen Produktnamen (z. B.
Wireless Headphones) - Einen Preis (z. B.
79.99) - Eine Lagerbestandsmenge (z. B.
25) - Einen anzuwendenden Rabattprozentsatz (z. B.
20)
Führe die folgenden Operationen aus:
- Erstelle eine benannte Liste namens
productmit den Elementen:name(Zeichenkette),price(numerisch),stock(numerisch) undavailable(aufTRUEgesetzt, wenn der Lagerbestand größer als 0 ist, andernfalls aufFALSE) - Gib den Produktnamen mithilfe des Operators
$aus - Berechne den rabattierten Preis (ursprünglicher Preis minus Rabattprozentsatz) und aktualisiere das Element
price - Füge ein neues Element namens
discountedmit dem WertTRUEhinzu - Verringere den
stockum 1 (um einen Kauf zu simulieren) - Entferne das Element
availableaus der Liste - Gib die endgültige Liste aus
Wenn die Eingaben beispielsweise 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:
- Ursprünglicher Preis 150 mit 25 % Rabatt: 150 - (150 * 25/100) = 112.5
- Der Lagerbestand wurde von 10 auf 9 reduziert
- Das Element
availablewurde aus der endgültigen 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 27Rechner zum Teilen der Rechnung
BegrüßungsnachrichtBenutzereingaben erfassen10FizzBuzz mit einer Wendung
SpielübersichtDie FizzBuzz-Funktion13Fortgeschrittene Vektoren
Vektor-Slicing und -IndizierungLogische IndizierungVektorarithmetik & RecyclingDer %in%-Operator2Variablen und Datentypen
Numerischer DatentypGanzzahliger DatentypZeichen-DatentypLogischer DatentypDatentypen überprüfenNamenskonventionenFehlende Werte: NAZusammenfassung – Variablen erstellen5Entscheidungen treffen
If-AnweisungIf - ElseWiederholung – Einfacher TaschenrechnerVerschachteltes If - Else8Schleifen
For-SchleifeWhile-SchleifeBreakNext (Continue)Wiederholung – FakultätSequenzgenerierung (seq, :)Verschachtelte SchleifenWiederholung – Dynamische Eingabe11Vektoren
Vektoren mit c() erstellenAuf Vektorelemente zugreifenVektoren ändernVektoroperationenZusammenfassung – PreisvektorZusammenfassung – Umgekehrter VektorBenannte Vektoren14Listen in R
Listen erstellenListenelemente zugreifenListen ändernBenannte ListenRückblick – Produktliste3Operatoren Teil 1
Arithmetische OperatorenGanzzahldivision und ModuloZuweisungsoperatorenRückblick – Einfache MathematikVergleichsoperatoren6Grundlegende Ein- und Ausgabe
Ausgabe mit printcat zur AusgabeAusgabe mit VariablenEingaben mit readline() lesenGrundlagen der TypkonvertierungRückblick – AltersrechnerRückblick – Wahr oder falsch9Funktionen
Eine Funktion deklarierenFunktionsargumenteRückgabewerteWiederholung – Sigma-FunktionWiederholung – ValidierungsfunktionStandardparameterwerteÜbe selbstständig: Online-R-Compiler