Menu
Coddy logo textTech

Oznaczanie zadania jako ukończonego

Część sekcji Podstawy ścieżki PHP w Coddy. Lekcja 57 z 71.

challenge icon

Wyzwanie

Łatwy

W poprzedniej lekcji wyświetlono wszystkie zadania wraz z ich statusem. Teraz dodaj możliwość oznaczania konkretnego zadania jako ukończonego.

Wczytaj cztery wiersze danych wejściowych z opisami zadań (trzy początkowe zadania i jedno nowe, tak jak poprzednio). Następnie wczytaj piątą wartość: liczbę całkowitą reprezentującą indeks zadania do oznaczenia jako ukończone (indeksowanie od 0).

Po utworzeniu tablicy $todos zawierającej wszystkie cztery zadania zaktualizuj wartość "completed" na true dla zadania o podanym indeksie.

Następnie przejdź pętlą przez tablicę i wyświetl każde zadanie w następującym formacie:

  • Jeśli zadanie jest ukończone: - [task description] (Done)
  • Jeśli zadanie oczekuje na wykonanie: - [task description] (Pending)

Wyświetl każde zadanie w osobnym wierszu.

Przykład:

Jeśli dane wejściowe to Buy groceries, Walk the dog, Finish homework, Call mom i 1, wynikiem powinno być:

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

Jeśli dane wejściowe to Clean room, Read book, Exercise, Cook dinner i 3, wynikiem powinno być:

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

Spróbuj swoich sił

<?php
// Read three task descriptions
$task1 = trim(fgets(STDIN));
$task2 = trim(fgets(STDIN));
$task3 = trim(fgets(STDIN));

// Read the new task to add
$newTask = trim(fgets(STDIN));

// Create a $todos array containing three task arrays
// Each task should be an associative array with "task" and "completed" keys
$todos = [
    ["task" => $task1, "completed" => false],
    ["task" => $task2, "completed" => false],
    ["task" => $task3, "completed" => false]
];

// Add the new task to the end of the array
$todos[] = ["task" => $newTask, "completed" => false];

// Loop through the array and print each task in the formatted list
foreach ($todos as $todo) {
    echo "- " . $todo["task"] . " (Pending)\n";
}
?>

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Kompilator PHP online