Funktionsargumente
Teil des Abschnitts Grundlagen der R-Journey von Coddy. Lektion 47 von 78.
Funktionen werden viel leistungsfähiger, wenn sie Eingaben akzeptieren können. Argumente (auch Parameter genannt) ermöglichen es dir, Werte an eine Funktion zu übergeben, wodurch sie flexibel und für verschiedene Situationen wiederverwendbar wird.
Um Argumente hinzuzufügen, platziere sie beim Definieren der Funktion innerhalb der Klammern:
greet <- function(name) {
print(paste("Hello,", name))
}
greet("Alice")
greet("Bob")Ausgabe:
[1] "Hello, Alice"
[1] "Hello, Bob"Die Funktion funktioniert jetzt mit jedem Namen, den du angibst. Wenn du greet("Alice") aufrufst, wird der Wert "Alice" dem Parameter name innerhalb der Funktion zugewiesen.
Du kannst mehrere Argumente definieren, indem du sie durch Kommas trennst:
add <- function(a, b) {
print(a + b)
}
add(5, 3)
add(10, 20)Ausgabe:
[1] 8
[1] 30Beim Aufrufen einer Funktion mit mehreren Argumenten werden die Werte den Parametern der Reihenfolge nach zugeordnet. Der erste Wert wird dem ersten Parameter zugeordnet, der zweite Wert dem zweiten Parameter und so weiter.
Aufgabe
EinfachErstelle eine Funktion namens calculate_area, die zwei Argumente entgegennimmt: length und width. Die Funktion soll die Fläche (Länge multipliziert mit Breite) mit print() ausgeben.
Lies zwei Zahlen aus der Eingabe ein, wandle sie in numerische Werte um und rufe deine Funktion mit diesen Werten auf.
Wenn die Eingaben beispielsweise 5 und 3 sind, sollte die Ausgabe folgendermaßen lauten:
[1] 15Wenn die Eingaben 7 und 4 sind, sollte die Ausgabe folgendermaßen lauten:
[1] 28Probier es selbst
# Eingabe lesen
con <- file("stdin", "r")
length <- as.numeric(suppressWarnings(readLines(con, n = 1)))
width <- as.numeric(suppressWarnings(readLines(con, n = 1)))
close(con)
# TODO: Erstelle eine Funktion namens calculate_area, die length und width entgegennimmt
# und die Fläche (length * width) ausgibt
# Rufe deine Funktion mit den Eingabewerten aufDiese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle 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 Eingabe3Operatoren 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