PHP Schnellstart – Coding Challenge 2 – Der Flug in die Karibik

Willkommen in der zweiten Coding-Challenge des PHP-Schnellstarts. Das Ziel der Challenge ist es, sich in fremden Code einzuarbeiten und ihn zu verstehen. Im untenstehenden Editor habe ich dir bereits Code vorbereitet. Hier findest du nur Grundlagen (Variablen, Funktionen etc.), die du schon kennengelernt hast.

Starte den Code, um zu schauen, was er ausführt.

Du wirst feststellen, dass es hier um ein paar Berechnungen zur Flugdauer und zum Kraftstoff-Verbrauch eines Flugzeuges geht, z.B. Der verbrauchte Brennstoff pro Minute sowie die Kraftstoff-Tank Länge und Breite.

Leider fehlen noch zwei Angaben, nämlich die Kraftstoff-Tank Höhe und die Flugdauer (in Stunden).

Aufgabe 1

Lies dir den Code durch und zeige die Flugdauer in Stunden als Text (echo) an. Dein String sollte zusätzlich etwas Text enthalten, damit er besser lesbar ist. (Tipp: Hierfür eignet sich die String-Verkettung.)

z.B. "Der Flug dauert XX Stunden", wobei XX die gedruckte Variable für die Flugdauer ist.

Die Flugdauer soll außerdem ohne Nachkommastellen angezeigt werden. (Tipp: Du musst dafür den String umwandeln)

Aufgabe 2

Wir wissen wie Breit und wie Lang der Kraftstofftank ist. Leider ist uns die Tankhöhe abhanden gekommen. Kannst du die Höhe mit dem echo-Befehl anzeigen? (Schreibe einen kleinen Text dazu, ähnlich wie Aufgabe 1, z.B. "Die Tankhöhe beträgt XX Meter", wobei XX die Variable der Tankhöhe ist.

Da die Angabe zur Tankhöhe präzise sein muss, kannst du sie mit allen Nachkommastellen anzeigen (hier ist keine String-Umwandlung notwendig).

Code-Editor:

[lp_spoiler title="Lösung anzeigen" class="da"]

Kurzfassung der Lösung:

// Zeile 7:
echo "<p>Der Flug dauert " . (int)$dauer . " Stunden</p>"; // Aufgabe 1

// Zeile 14:
echo "<p>Der Tank ist " . $tankHoehe . " Meter hoch</p>"; // Aufgabe 2

Gesamter Code mit den beiden Lösungen:

<html>
<body>
<?php 
  echo "<h3>Für deinen Flug in die Karibik (Ziel: Bahamas) benötigt das Flugzeug einen großen Kraftstofftank.</h3>";

  $dauer = flugDauerBerechnen(7870, 650);
  echo "<p>Der Flug dauert " . (int)$dauer . " Stunden</p>"; // Aufgabe 1

  $verbrauchProMinute = 8;
  $verbrauch = spritVerbrauchBerechnen($dauer, $verbrauchProMinute);
  echo "<p>Für die gesamte Flugdauer benötigen wir " . $verbrauch . " Liter.</p>";

  $tankHoehe = tankHoeheBerechnen($verbrauch);
  echo "<p>Der Tank ist " . $tankHoehe . " Meter hoch</p>"; // Aufgabe 2

  function flugDauerBerechnen($entfernung, $geschwindigkeit) {
    return $entfernung / $geschwindigkeit;
  }
  function spritVerbrauchBerechnen($dauer, $verbrauchProMinute) {
    echo "<p>Wir verbauchen pro Minute " . $verbrauchProMinute . " Liter Brennstoff.</p>";
    $verbrauchProStunde = $verbrauchProMinute * 60;

    echo "<p>Wir verbauchen pro Stunde " . $verbrauchProStunde . " Liter Brennstoff.</p>";
    return $verbrauchProStunde * $dauer;
  }

  function tankHoeheBerechnen($liter) {
    $tankLaenge = 2;
    $tankBreite = 2;
    echo "<p>Der Flugzeug-Tank ist 8 m breit und 8 m lang.</p>";
    $tankHoehe = $liter / $tankLaenge / $tankBreite / 1000;
    return $tankHoehe;
  }
?>
</body>
</html>

[/lp_spoiler]

Zusammenfassung - Coding Challenge 2

Das waren die wichtigsten Grundlagen zu Variablen, Funktionen, Rückgabewerten und Rechen-Operatoren. Hier hast du gelernt, wie du einfache Anwendungen baust, um Werte in Funktionen zu berechnen und diese mit dem echo-Befehl auszugeben.

Im nächsten Modul geht es um logische Entscheidungen, Schleifen und weitere Operatoren, die dir viel Flexibilität beim Programmieren bringen. Wir sehen uns im nächsten Modul 🙂