Marcar una tarea como completada
Parte de la sección Fundamentos del Journey de PHP de Coddy. Lección 57 de 71.
Desafío
FácilEn la lección anterior, mostraste todas las tareas con su estado. Ahora, añade la posibilidad de marcar una tarea específica como completada.
Lee cuatro líneas de entrada para las descripciones de las tareas (tres tareas iniciales más una tarea nueva, como antes). Después, lee una quinta entrada: un entero que represente el índice de la tarea que se marcará como completada (basado en 0).
Después de construir el arreglo $todos con las cuatro tareas, actualiza el valor "completed" a true para la tarea en el índice especificado.
Después, recorre el arreglo e imprime cada tarea con el siguiente formato:
- Si la tarea está completada:
- [task description] (Done) - Si la tarea está pendiente:
- [task description] (Pending)
Imprime cada tarea en una línea separada.
Ejemplo:
Si las entradas son Buy groceries, Walk the dog, Finish homework, Call mom y 1, la salida debería ser:
- Buy groceries (Pending)
- Walk the dog (Done)
- Finish homework (Pending)
- Call mom (Pending)Si las entradas son Clean room, Read book, Exercise, Cook dinner y 3, la salida debería ser:
- Clean room (Pending)
- Read book (Pending)
- Exercise (Pending)
- Cook dinner (Done)Pruébalo tú mismo
<?php
// Colección de tareas predefinida
$tasks = [
[
"description" => "Buy groceries",
"completed" => false
],
[
"description" => "Walk the dog",
"completed" => true
],
[
"description" => "Read a book",
"completed" => false
],
[
"description" => "Exercise",
"completed" => false
]
];
// Leer entrada
$taskIndex = trim(fgets(STDIN));
$newStatus = trim(fgets(STDIN));
// TODO: Escribe tu código a continuación
// Convierte las entradas a tipos apropiados y actualiza la tarea
// Muestra el mensaje de la tarea actualizada
// Muestra todas las tareas con su estado
// Muestra el resumen con total, completadas y pendientes
?>Todas las lecciones de Fundamentos
4Operadores de comparación y lógicos
Operadores de comparaciónIgualdad e identidadOperadores lógicos, parte 1Operadores lógicos, parte 2Repaso: lógica simple2Variables y tipos de datos
NúmerosCadenas y comillasBooleanosConvenciones de nombresRepaso: inicialización de variablesVariables vacíasConcatenación de cadenasObtener datos del usuarioConvertir a otros tipos5Lógica condicional
Sentencia ifIf - ElseEl operador ternarioOperador de coalescencia nulaSentencia switchRepaso - Tomar decisiones3Operadores básicos
Operadores aritméticosOperador móduloOperador de exponenciaciónAsignación combinadaIncremento/DecrementoPrecedencia de operadoresRepaso: cálculos simplesOperadores de cadenas6Arrays, parte 1 - indexados
Introducción a los ArraysCreación de Arrays indexadosAcceso a elementos mediante índicesModificación de elementos mediante índicesTamaño de un Array con CountAdición de elementos a un ArrayRepaso - Gestión de una lista sencilla9Proyecto: Lista de tareas sencilla
Descripción general y datos del proyectoAñadir una nueva tareaPractica por tu cuenta: Compilador de PHP online