Menu
Coddy logo textTech

Trouver le meilleur élève

Fait partie de la section Logique & Flux du Journey PHP de Coddy — leçon 37 sur 68.

challenge icon

Défi

Facile

Vous recevrez une entrée : un objet JSON représentant le carnet de notes des étudiants. Le carnet de notes utilise les noms des étudiants comme clés, chaque étudiant ayant un "id" et un tableau "grades" contenant leurs notes d'examen.

Lisez l'entrée, convertissez la chaîne JSON en un tableau de carnet de notes, trouvez l'étudiant ayant la moyenne la plus élevée et affichez le nom de cet étudiant de tête.

Pour trouver l'étudiant de tête : calculez la note moyenne de chaque étudiant en additionnant ses notes et en divisant par le nombre de notes, puis déterminez quel étudiant a la moyenne la plus élevée.

Format d'entrée : Une ligne contenant un objet JSON représentant le carnet de notes (exemple : {"Alice":{"id":101,"grades":[85,92,78]},"Bob":{"id":102,"grades":[90,88,95]},"Charlie":{"id":103,"grades":[76,84,89]}})

Sortie attendue : Le nom de l'étudiant ayant la moyenne la plus élevée (exemple : Bob)

Essayez vous-même

<?php
// Lire l'entrée JSON
$input = fgets(STDIN);

// Convertir le JSON en tableau
$gradebook = (array)json_decode($input, true);

// TODO : Écrivez votre code ci-dessous
// Calculer la note moyenne de chaque étudiant
// Trouver l'étudiant avec la moyenne la plus élevée


// Afficher le nom du meilleur étudiant
echo $topStudent;
?>

Toutes les leçons de Logique & Flux