Menu
Coddy logo textTech

Recap - Simple Logic

Parte de la sección Fundamentos del Journey de PHP de Coddy — lección 27 de 71.

challenge icon

Desafío

Fácil

Lee cinco valores de entrada: un entero age, un entero balance, una cadena isStudent (ya sea "true" o "false"), una cadena hasPromoCode (ya sea "true" o "false"), y un entero itemPrice.

Convierte los valores de cadena a booleanos comparándolos con "true".

Evalúa las siguientes tres condiciones e imprime el resultado de cada una usando var_dump(), cada una en una nueva línea:

  1. Verifica si la persona califica para un descuento juvenil: age es menor que 25 Y es estudiante
  2. Verifica si la persona puede permitirse el artículo con un descuento: balance es mayor o igual que itemPrice O (balance es al menos la mitad de itemPrice Y hasPromoCode es true)
  3. Verifica si la persona obtiene checkout prioritario: (age es al menos 65 O isStudent es true) Y balance es mayor que 0 Y NO hasPromoCode

Ejemplo:

Si las entradas son 22, 50, true, false, y 80, la salida debería ser:

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

Explicación:

  • 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

Pruébalo tú mismo

<?php
// Leer valores de entrada
$age = intval(fgets(STDIN));
$balance = intval(fgets(STDIN));
$isStudentStr = trim(fgets(STDIN));
$hasPromoCodeStr = trim(fgets(STDIN));
$itemPrice = intval(fgets(STDIN));

// Convertir valores de cadena a booleanos
$isStudent = $isStudentStr === "true";
$hasPromoCode = $hasPromoCodeStr === "true";

// TODO: Escribe tu código a continuación
// 1. Verificar si la persona califica para un descuento juvenil

// 2. Verificar si la persona puede pagar el artículo con descuento

// 3. Verificar si la persona obtiene checkout prioritario

?>

Todas las lecciones de Fundamentos