Menu
Coddy logo textTech

Recap - Simple Logic

Teil des Abschnitts Grundlagen der PHP-Journey von Coddy — Lektion 27 von 71.

challenge icon

Aufgabe

Einfach

Lesen Sie fünf Werte von der Eingabe: eine Ganzzahl age, eine Ganzzahl balance, einen String isStudent (entweder "true" oder "false"), einen String hasPromoCode (entweder "true" oder "false"), und eine Ganzzahl itemPrice.

Wandeln Sie die String-Werte in Booleans um, indem Sie sie mit "true" vergleichen.

Bewerten Sie die folgenden drei Bedingungen und geben Sie das Ergebnis jeder mit var_dump() aus, jede in einer neuen Zeile:

  1. Überprüfen Sie, ob die Person für einen Jugendarabatt qualifiziert ist: age ist weniger als 25 UND ist ein Student
  2. Überprüfen Sie, ob die Person das Item mit Rabatt bezahlen kann: balance ist größer oder gleich itemPrice ODER (balance ist mindestens die Hälfte von itemPrice UND hasPromoCode ist true)
  3. Überprüfen Sie, ob die Person Prioritäts-Checkout bekommt: (age ist mindestens 65 ODER isStudent ist true) UND balance ist größer als 0 UND NICHT hasPromoCode

Beispiel:

Wenn die Eingaben 22, 50, true, false, und 80 sind, sollte die Ausgabe sein:

bool(true)
bool(false)
bool(true)

Erklärung:

  • age < 25 && isStudent → 22 < 25 && true → true
  • balance >= itemPrice || (balance >= itemPrice / 2 && hasPromoCode) → 50 >= 80 || (50 >= 40 && false) → false || false → false
  • (age >= 65 || isStudent) && balance > 0 && !hasPromoCode → (false || true) && true && true → true

Probier es selbst

<?php
// Lese Eingabewerte
$age = intval(fgets(STDIN));
$balance = intval(fgets(STDIN));
$isStudentStr = trim(fgets(STDIN));
$hasPromoCodeStr = trim(fgets(STDIN));
$itemPrice = intval(fgets(STDIN));

// Konvertiere String-Werte zu Booleans
$isStudent = $isStudentStr === "true";
$hasPromoCode = $hasPromoCodeStr === "true";

// TODO: Schreibe deinen Code unten
// 1. Überprüfe, ob die Person für einen Jugendarabatt qualifiziert ist

// 2. Überprüfe, ob die Person das Item mit Rabatt bezahlen kann

// 3. Überprüfe, ob die Person Prioritäts-Checkout bekommt

?>

Alle Lektionen in Grundlagen