Menu
CoddyTech

Transformateur de données

Fait partie de la section Logique et flux d’exécution du Journey GDScript de Coddy. Leçon 78 sur 78.

challenge icon

Défi

Difficile

Transformez des dossiers d’élèves en rapport. Le programme lit un nombre entier n, puis n dossiers. Un dossier comporte trois champs séparés par ; : un identifiant d’élève, les notes (nombres entiers séparés par des virgules) et les matières (séparées par des virgules) :

S123;88,92,85;Math,Science,History

Un élève est admissible lorsque toutes ses notes sont supérieures à 70 (une note égale à 70 ne suffit pas). Vérifiez cela avec la méthode de tableau all().

Affichez Qualified students: et leur nombre. Ensuite, pour chaque élève admissible dans l’ordre de saisie, affichez son identifiant, : et la moyenne de ses notes avec deux décimales. Puis affichez Subjects: et, pour chaque matière suivie par au moins un élève admissible, la matière, : et le nombre d’élèves admissibles qui la suivent, dans l’ordre de première apparition des matières.

Pour les entrées suivantes :

3
S123;88,92,85;Math,Science,History
S124;65,95,80;Math,Science,English
S125;91,89,92;Math,Physics,History

la sortie est :

Qualified students: 2
S123: 88.33
S125: 90.67
Subjects:
Math: 2
Science: 1
History: 2
Physics: 1

S124 n’est pas admissible à cause de la note 65, donc English n’est pas comptée. S’il n’y a aucun élève admissible, la sortie se termine par la ligne Subjects:.

Essayez vous-même

extends Node

func _ready():
	var n := int(OS.read_string_from_stdin())
	# Lire n enregistrements, puis afficher les étudiants qualifiés et les matières
	pass

Toutes les leçons de Logique et flux d’exécution

Entraînez-vous par vous-même : Compilateur GDScript en ligne