Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

تحديد مهمة كمكتملة

جزء من قسم Fundamentals في رحلة PHP على Coddy — الدرس 57 من 71.

challenge icon

التحدي

سهل

في الدرس السابق، قمت بعرض جميع المهام مع حالتها. الآن، أضف القدرة على تحديد مهمة معينة كمكتملة.

اقرأ أربعة أسطر من المدخلات لوصف المهام (ثلاث مهام أولية بالإضافة إلى مهمة جديدة واحدة، كما في السابق). ثم اقرأ مدخلاً خامساً: وهو عدد صحيح يمثل فهرس (index) المهمة المراد تحديدها كمكتملة (يبدأ من 0).

بعد بناء مصفوفة $todos التي تحتوي على جميع المهام الأربع، قم بتحديث قيمة "completed" إلى true للمهمة الموجودة في الفهرس المحدد.

ثم قم بالمرور عبر المصفوفة واطبع كل مهمة بالتنسيق التالي:

  • إذا كانت المهمة مكتملة: - [task description] (Done)
  • إذا كانت المهمة معلقة: - [task description] (Pending)

اطبع كل مهمة في سطر منفصل.

مثال:

إذا كانت المدخلات هي Buy groceries، و Walk the dog، و Finish homework، و Call mom، و 1، فيجب أن يكون المخرج:

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

إذا كانت المدخلات هي Clean room، و Read book، و Exercise، و Cook dinner، و 3، فيجب أن يكون المخرج:

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

جرّب بنفسك

<?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";
}
?>

جميع دروس Fundamentals