Menu
Coddy logo textTech

Benutzereingaben abfragen

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

challenge icon

Aufgabe

Einfach

In der vorherigen Lektion haben Sie eine Willkommensnachricht für den Bill Split Calculator erstellt. Fügen Sie nun die Funktionalität hinzu, um Benutzereingaben für die Rechnungsberechnung zu erfassen.

Lesen Sie nach Ihrer vorhandenen Willkommensnachricht drei Eingaben vom Benutzer ein:

  1. Den Gesamtbetrag der Rechnung
  2. Den Trinkgeld-Prozentsatz (als ganze Zahl, z. B. 15 für 15%)
  3. Die Anzahl der Personen, die sich die Rechnung teilen

In R-Skripten, die nicht-interaktiv ausgeführt werden (wie auf dieser Plattform), wird die Eingabe aus dem Standard-Input-Stream gelesen. Öffnen Sie dazu zuerst eine Verbindung zu stdin mit file(), lesen Sie dann jede Zeile mit readLines() und schließen Sie die Verbindung, wenn Sie fertig sind:

con <- file("stdin", "r")
bill <- as.numeric(suppressWarnings(readLines(con, n = 1)))
tip_percent <- as.numeric(suppressWarnings(readLines(con, n = 1)))
people <- as.numeric(suppressWarnings(readLines(con, n = 1)))
close(con)

Hier ist die Erklärung der einzelnen Teile:

  • file("stdin", "r") — öffnet den Standard-Input-Stream zum Lesen und speichert ihn in con
  • readLines(con, n = 1) — liest genau eine Zeile aus dieser Verbindung
  • suppressWarnings(...) — unterdrückt harmlose Warnungen, die beim Lesen von stdin auf diese Weise auftreten
  • as.numeric(...) — wandelt die Texteingabe in eine Zahl um
  • close(con) — schließt die Verbindung, nachdem alle Eingaben gelesen wurden

Speichern Sie die drei Werte in Variablen namens bill, tip_percent und people.

Zeigen Sie nach dem Einlesen der Eingaben eine Bestätigungsnachricht an, die die eingegebenen Werte im folgenden Format darstellt:

Bill: $[bill]
Tip: [tip_percent]%
People: [people]

Verwenden Sie cat() für alle Ausgaben und fügen Sie bei Bedarf Zeilenumbruchzeichen \n ein. Verwenden Sie sep = "" in jedem cat()-Aufruf, um unerwünschte Leerzeichen zu vermeiden.

Wenn die Eingaben beispielsweise 120, 18 und 4 sind, sollte die vollständige Ausgabe wie folgt aussehen:

Welcome to the Bill Split Calculator!
Let's split your bill fairly.
Bill: $120
Tip: 18%
People: 4

Probier es selbst

# TODO: Write your code below
# Use cat() to display the welcome message
# Remember to use \n for new lines
cat("Welcome to the Bill Split Calculator!\nLet's split your bill fairly.\n")

Alle Lektionen in Grundlagen