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

إيجاد الطالب المتفوق

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

challenge icon

التحدي

سهل

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

اقرأ المدخلات، وقم بتحويل سلسلة JSON إلى مصفوفة سجل درجات، وابحث عن الطالب الذي حصل على أعلى متوسط درجات، واطبع اسم ذلك الطالب المتفوق.

للعثور على الطالب المتفوق: احسب متوسط الدرجات لكل طالب عن طريق جمع درجاتهم وقسمتها على عدد الدرجات، ثم حدد الطالب الذي لديه أعلى متوسط.

تنسيق المدخلات: سطر واحد يحتوي على كائن JSON يمثل سجل الدرجات (مثال: {"Alice":{"id":101,"grades":[85,92,78]},"Bob":{"id":102,"grades":[90,88,95]},"Charlie":{"id":103,"grades":[76,84,89]}})

المخرجات المتوقعة: اسم الطالب الحاصل على أعلى متوسط درجات (مثال: Bob)

جرّب بنفسك

<?php
// قراءة مدخلات JSON
$input = fgets(STDIN);

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

// TODO: اكتب كودك أدناه
// حساب متوسط الدرجات لكل طالب
// العثور على الطالب الحاصل على أعلى متوسط


// طباعة اسم الطالب المتفوق
echo $topStudent;
?>

جميع دروس Logic & Flow