Recap - Simple Logic
Parte de la sección Fundamentos del Journey de PHP de Coddy — lección 27 de 71.
Desafío
FácilLee 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:
- Verifica si la persona califica para un descuento juvenil: age es menor que 25 Y es estudiante
- 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)
- 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 → truebalance >= 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
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators