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

إضافة درجة لطالب

جزء من قسم Logic & Flow في رحلة PHP على Coddy — الدرس 35 من 68.

challenge icon

التحدي

سهل

ستتلقى ثلاثة مدخلات: كائن JSON يمثل سجل درجات الطلاب الحالي، واسم الطالب، والدرجة المراد إضافتها. يستخدم سجل الدرجات أسماء الطلاب كمفاتيح، حيث يمتلك كل طالب "id" ومصفوفة "grades". المدخل الثاني هو اسم الطالب، والمدخل الثالث هو الدرجة المراد إضافتها (كعدد).

اقرأ المدخلات الثلاثة، وقم بتحويل سلسلة JSON إلى مصفوفة سجل درجات، وحدد موقع الطالب المحدد، وأضف الدرجة الجديدة إلى مصفوفة درجاته، ثم اطبع سجل الدرجات المحدث باستخدام print_r().

تنسيق المدخلات:

  • السطر الأول: كائن JSON يمثل سجل الدرجات الحالي (مثال: {"Alice":{"id":101,"grades":[85,92,78]},"Bob":{"id":102,"grades":[90,88,95]},"Charlie":{"id":103,"grades":[76,84,89]}})
  • السطر الثاني: اسم الطالب (مثال: Alice)
  • السطر الثالث: الدرجة المراد إضافتها (مثال: 88)

المخرجات المتوقعة: مصفوفة سجل الدرجات المحدثة معروضة باستخدام print_r()، مع إضافة الدرجة الجديدة إلى مصفوفة درجات الطالب المحدد.

جرّب بنفسك

<?php
// قراءة سلسلة JSON لسجل الدرجات
$gradebookJson = fgets(STDIN);

// قراءة اسم الطالب
$studentName = trim(fgets(STDIN));

// قراءة الدرجة المراد إضافتها
$grade = intval(fgets(STDIN));

// تحويل JSON إلى مصفوفة
$gradebook = (array)json_decode($gradebookJson, true);

// TODO: اكتب الكود الخاص بك أدناه
// ابحث عن الطالب وأضف الدرجة الجديدة إلى مصفوفة درجاته


// عرض سجل الدرجات المحدث
print_r($gradebook);
?>

جميع دروس Logic & Flow