Menu
CoddyTech

Ajouter un étudiant

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

challenge icon

Défi

Facile

Ajoute des étudiants aux dossiers. Conserve tout ce que tu as écrit aux étapes précédentes.

1. La fonction. Sous _ready(), écris add_student(student_name: String, age: int, courses: Array) -> void :

  • Si student_records contient déjà le nom, affiche Student '<name>' already exists. et retourne.
  • Sinon, construis un ensemble des cours (un dictionnaire dont chaque cours est une clé et dont true est la valeur) et enregistre l’étudiant sous son nom dans un dictionnaire contenant trois clés : "age" (l’âge), "grades" (un tableau vide) et "courses" (l’ensemble). Puis affiche Student '<name>' added successfully.

2. La commande. La commande add Alice 20 Math Physics contient le nom, l’âge et un nombre quelconque de cours. Ajoute cette branche au match, au-dessus de ["show"] :

["add", var student, var age, ..]:
	add_student(student, int(age), parts.slice(3))

.. permet au motif de correspondre aux cours qui suivent, et parts.slice(3) est le tableau de ces cours. Pour les commandes

add Alice 20 Math Physics
add Bob 22 Biology Chemistry
show
exit

la sortie est :

Student 'Alice' added successfully.
Student 'Bob' added successfully.
{ "Alice": { "age": 20, "grades": [], "courses": { "Math": true, "Physics": true } }, "Bob": { "age": 22, "grades": [], "courses": { "Biology": true, "Chemistry": true } } }
Goodbye!

Essayez vous-même

extends Node

# Chaque étudiant : name -> {"age": int, "grades": Array, "courses": un ensemble de noms de cours}
var student_records := {}

func _ready():
	while true:
		var parts := Array(OS.read_string_from_stdin().split(" ", false))
		match parts:
			["show"]:
				print(student_records)
			["exit"]:
				print("Goodbye!")
				break

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

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