Noch mehr Optionen mit else if

Mit der Anweisung else if kannst du deine Kontrollstruktur weiter anpassen. Du kannst so viele else if-Anweisungen hinzufügen, wie du möchtest. Beachte, dass R den Rest der Kontrollstruktur ignoriert, sobald eine Bedingung als TRUE ausgewertet und der zugehörige Anweisungsteil ausgeführt wurde. Zur Erinnerung siehst du hier noch einmal die Syntax:

if (condition1) {

  expr1

} else if (condition2) {

  expr2

} else if (condition3) {

  expr3

} else {

  expr4

}

Auch hier ist es wichtig, dass die Schlüsselwörter else if in derselben Zeile stehen wie die schließende Klammer des vorherigen Teils der Kontrollstruktur!

Diese Übung ist Teil des Kurses

R für Fortgeschrittene

Kurs anzeigen

Anleitung zur Übung

Füge beiden Kontrollstrukturen entsprechenden Code hinzu, um die folgenden Vorgaben zu erfüllen:

  • R gibt "Showing Facebook information" in der Konsole aus, wenn medium gleich "Facebook" ist. Denk daran, dass bei R zwischen Groß- und Kleinschreibung unterschieden wird!
  • Es wird der Text "Your number of views is average" ausgegeben, wenn num_views zwischen 15 (inklusiv) und 10 (exklusiv) liegt. Du kannst die Variablen medium und num_views auch ändern, um zu sehen, wie die Kontrollstruktur reagiert. In beiden Fällen sollte der vorhandene Code um die else if-Anweisung erweitert werden. Bereits vorhandener Code muss nicht geändert werden.

Interaktive Übung zum Anfassen

Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.

# Variables related to your last day of recordings
medium <- "LinkedIn"
num_views <- 14

# Control structure for medium
if (medium == "LinkedIn") {
  print("Showing LinkedIn information")
} else if (medium == "Facebook") {
  # Add code to print correct string when condition is TRUE

} else {
  print("Unknown medium")
}

# Control structure for num_views
if (num_views > 15) {
  print("You're popular!")
} else if (num_views <= 15 & num_views > 10) {
  # Add code to print correct string when condition is TRUE

} else {
  print("Try to be more visible!")
}