Menu
Coddy logo textTech

Eingaben mit readline() lesen

Teil des Abschnitts Grundlagen der R-Journey von Coddy. Lektion 29 von 78.

Bisher hast du gelernt, wie du Ausgaben anzeigen kannst. Jetzt ist es an der Zeit, deine Programme interaktiv zu machen, indem du Eingaben vom Benutzer liest. Mit der Funktion readline() kannst du erfassen, was der Benutzer eingibt.

name <- readline()
cat("Hello,", name, "\n")

Wenn dieser Code ausgeführt wird, wartet R darauf, dass der Benutzer etwas eingibt und die Eingabetaste drückt. Was auch immer er eingibt, wird in der Variable name gespeichert. Wenn der Benutzer „Alice“ eingibt, wäre die Ausgabe: Hello, Alice

Eine wichtige Sache, die du wissen solltest: readline() gibt immer eine Zeichenkette zurück, selbst wenn der Benutzer eine Zahl eingibt. Wenn jemand „25“ eingibt, wird sie als der Text "25" und nicht als die Zahl 25 gespeichert. In der nächsten Lektion lernst du, wie du zwischen Datentypen konvertierst.

Du kannst mehrere Eingaben lesen, indem du readline() mehrmals verwendest:

first <- readline()
second <- readline()
cat("First:", first, "\n")
cat("Second:", second, "\n")

Jeder Aufruf von readline() wartet auf eine separate Eingabezeile vom Benutzer.

Beim Kombinieren von Text mit Variablen mithilfe von cat() wird zwischen jedem durch ein Komma getrennten Element ein Leerzeichen eingefügt. Manchmal musst du Text ohne Leerzeichen verbinden, zum Beispiel, um ein Satzzeichen direkt an ein Wort anzuhängen. Dafür ist paste0() nützlich. Die Funktion verkettet Zeichenketten ohne Trennzeichen zwischen ihnen:

city <- readline()
cat("Welcome to", paste0(city, "!"), "\n")

Hier fügt paste0(city, "!") den Wert von city und "!" ohne Leerzeichen zusammen. Wenn die Benutzerin oder der Benutzer „Paris“ eingibt, lautet die Ausgabe: Welcome to Paris!

challenge icon

Aufgabe

Einfach

Lies zwei Eingabezeilen und zeige eine personalisierte Begrüßungsnachricht an.

Du erhältst zwei Eingaben:

  1. Einen Vornamen
  2. Einen Städtenamen

Lies beide Eingaben mit readline() ein und zeige eine Nachricht im folgenden Format an:

Welcome, [name] from [city]!

Verwende cat(), um die Ausgabe zu erzeugen. Achte darauf, am Ende das Ausrufezeichen und ein Zeilenumbruchzeichen \n einzufügen.

Wenn die Eingaben beispielsweise Emma und Paris lauten, sollte die Ausgabe folgendermaßen aussehen:

Welcome, Emma from Paris!

Probier es selbst

# Eingabe lesen
con <- file("stdin", "r")
name <- suppressWarnings(readLines(con, n = 1))
city <- suppressWarnings(readLines(con, n = 1))

# TODO: Schreibe deinen Code unten, um die Begrüßungsnachricht anzuzeigen
# Verwende cat(), um auszugeben: Welcome, [name] from [city]!
# Vergiss nicht das Newline-Zeichen \n am Ende
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: Online-R-Compiler