Wiederholung – Preis-Vektor
Teil des Abschnitts Grundlagen der R-Journey von Coddy — Lektion 60 von 78.
Aufgabe
EinfachSie erhalten zwei Eingabezeilen:
- Eine durch Kommas getrennte Liste der Originalpreise (z. B.
100,200,150,80) - Einen Rabattprozentsatz als ganze Zahl (z. B.
20für 20 %)
Führen Sie die folgenden Operationen aus:
- Erstellen Sie einen Vektor aus den durch Kommas getrennten Preisen
- Der Filialleiter hat bemerkt, dass der dritte Artikel falsch ausgezeichnet war. Ändern Sie ihn auf
125 - Wenden Sie den Rabatt auf alle Preise an (multiplizieren Sie mit
(100 - discount) / 100) - Geben Sie den Vektor der rabattierten Preise aus
- Geben Sie die Summe aller rabattierten Preise mit
sum()aus - Geben Sie den Durchschnitt der rabattierten Preise mit
mean()aus
Wenn die Eingaben beispielsweise wie folgt lauten:
100,200,150,80
20Sollte die Ausgabe wie folgt aussehen:
[1] 80 160 100 64
[1] 404
[1] 101Erklärung: Der dritte Preis wird auf 125 geändert, dann wird ein Rabatt von 20 % angewendet (Multiplikation mit 0.8), was zu den Preisen 80, 160, 100 und 64 führt.
Probier es selbst
# Eingabe lesen
con <- file("stdin", "r")
prices_input <- suppressWarnings(readLines(con, n = 1))
discount <- suppressWarnings(readLines(con, n = 1))
close(con)
# Eingaben konvertieren
original_prices <- as.numeric(unlist(strsplit(prices_input, ",")))
discount_percent <- as.numeric(discount)
# TODO: Schreiben Sie Ihren Code unten
# 1. Ändern Sie das dritte Element auf 125
# 2. Wenden Sie den Rabatt auf alle Preise an
# 3. Geben Sie den Vektor der rabattierten Preise aus
# 4. Geben Sie die Summe mit sum() aus
# 5. Geben Sie den Durchschnitt mit mean() 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 Vektoren3Operatoren 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