Menu
CoddyTech

Modifier un contact

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

challenge icon

Défi

Facile

Gérez le choix 3, qui consiste à modifier un contact. Conservez tout ce que vous avez écrit dans les étapes précédentes.

Écrivez edit_contact(contact_book: Dictionary). La fonction lit un nom.

  • Si le nom ne figure pas dans contact_book, affichez Contact not found! et ne lisez rien d’autre.
  • Sinon, lisez trois lignes : le nouveau numéro de téléphone, le nouvel e-mail et la nouvelle adresse, dans cet ordre. Une ligne vide signifie « conserver la valeur actuelle ». Mettez à jour les champs qui ne sont pas vides, puis affichez Contact updated successfully!

Par exemple, si Alice figure dans le carnet et que l’entrée après le choix 3 est :

Alice
987-654-3210

456 Elm St

Alice a le numéro de téléphone 987-654-3210 et l’adresse 456 Elm St, et conserve son e-mail.

Dans la boucle, ajoutez une branche elif pour "3" qui appelle edit_contact(contact_book).

Essayez vous-même

extends Node

func _ready():
	var contact_book := {}

	while true:
		display_menu()
		var choice := OS.read_string_from_stdin()
		if choice == "1":
			add_contact(contact_book)
		elif choice == "2":
			view_contact(contact_book)
		elif choice == "6":
			break

func display_menu() -> void:
	print("Contact Book Menu:")
	print("1. Add Contact")
	print("2. View Contact")
	print("3. Edit Contact")
	print("4. Delete Contact")
	print("5. List All Contacts")
	print("6. Exit")

func add_contact(contact_book: Dictionary) -> void:
	var contact_name := OS.read_string_from_stdin()
	if contact_book.has(contact_name):
		print("Contact already exists!")
		return
	var phone := OS.read_string_from_stdin()
	var email := OS.read_string_from_stdin()
	var address := OS.read_string_from_stdin()
	contact_book[contact_name] = {"phone": phone, "email": email, "address": address}
	print("Contact added successfully!")

func view_contact(contact_book: Dictionary) -> void:
	var contact_name := OS.read_string_from_stdin()
	if contact_book.has(contact_name):
		var contact: Dictionary = contact_book[contact_name]
		print("Name: ", contact_name)
		print("Phone: ", contact["phone"])
		print("Email: ", contact["email"])
		print("Address: ", contact["address"])
	else:
		print("Contact not found!")

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

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