Menu
Coddy logo textTech

Marcando uma Tarefa como Concluída

Parte da seção Fundamentos do Journey de PHP da Coddy — lição 57 de 71.

challenge icon

Desafio

Fácil

Na lição anterior, você exibiu todas as tarefas com seu status. Agora, adicione a capacidade de marcar uma tarefa específica como concluída.

Leia quatro linhas de entrada para descrições de tarefas (três tarefas iniciais mais uma nova tarefa, como antes). Em seguida, leia uma quinta entrada: um inteiro representando o índice da tarefa a ser marcada como concluída (baseado em 0).

Após construir o array $todos com todas as quatro tarefas, atualize o valor "completed" para true para a tarefa no índice especificado.

Em seguida, percorra o array e imprima cada tarefa no seguinte formato:

  • Se a tarefa estiver concluída: - [task description] (Done)
  • Se a tarefa estiver pendente: - [task description] (Pending)

Imprima cada tarefa em uma linha separada.

Exemplo:

Se as entradas forem Buy groceries, Walk the dog, Finish homework, Call mom e 1, a saída deve ser:

- Buy groceries (Pending)
- Walk the dog (Done)
- Finish homework (Pending)
- Call mom (Pending)

Se as entradas forem Clean room, Read book, Exercise, Cook dinner e 3, a saída deve ser:

- Clean room (Pending)
- Read book (Pending)
- Exercise (Pending)
- Cook dinner (Done)

Experimente você mesmo

<?php
// Coleção de tarefas predefinida
$tasks = [
    [
        "description" => "Buy groceries",
        "completed" => false
    ],
    [
        "description" => "Walk the dog", 
        "completed" => true
    ],
    [
        "description" => "Read a book",
        "completed" => false
    ],
    [
        "description" => "Exercise",
        "completed" => false
    ]
];

// Ler entrada
$taskIndex = trim(fgets(STDIN));
$newStatus = trim(fgets(STDIN));

// TODO: Escreva seu código abaixo
// Converta as entradas para os tipos apropriados e atualize a tarefa
// Exiba a mensagem da tarefa atualizada
// Exiba todas as tarefas com seu status
// Exiba o resumo com contagens total, concluídas e pendentes

?>

Todas as lições de Fundamentos