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

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

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

challenge icon

التحدي

سهل

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

اقرأ أربعة أسطر من الإدخال لوصف المهام (ثلاث مهام أولية بالإضافة إلى مهمة جديدة واحدة، كما سبق). ثم اقرأ إدخالًا خامسًا: عددًا صحيحًا يمثل فهرس المهمة المطلوب تحديدها على أنها مكتملة (بفهرس يبدأ من 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";
}
?>

جميع دروس الأساسيات

تدرّب بنفسك: مترجم PHP عبر الإنترنت