Affichage d'un medecin d'une liste
Fermé
dana2019
Messages postés
21
Date d'inscription
lundi 20 avril 2020
Statut
Membre
Dernière intervention
15 mai 2020
-
22 avril 2020 à 09:35
Whismeril Messages postés 19024 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 18 avril 2024 - 22 avril 2020 à 11:07
Whismeril Messages postés 19024 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 18 avril 2024 - 22 avril 2020 à 11:07
A voir également:
- Affichage d'un medecin d'une liste
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Déchiffrer écriture médecin - Guide
- Liste de diffusion whatsapp - Guide
- Triez la liste comme sur cette illustration (attention, on ne voit que le début …). quel est le mot formé par les 6 dernières lettres de la colonne code ? - Forum Excel
2 réponses
Whismeril
Messages postés
19024
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 avril 2024
928
22 avril 2020 à 09:47
22 avril 2020 à 09:47
La méthode Contains te dit si un objet existe déjà dans la liste.
Avec new quelque chose, il ne peut pas exister déjà puisqu’il est tout nouveau.
Il faut que tu itères tous les items de la liste et que tu regardes la valeur de la propriété code de chacun.
Si tu trouves, tu arrêtes la boucle et tu agis en conséquence, si tu ne trouves pas tu agis autrement.
Arrêter la boucle est important car s’il y a 10 000 items et que celui que tu cherches est le centième, cela t’évite 9 900 itérations inutiles.
Avec new quelque chose, il ne peut pas exister déjà puisqu’il est tout nouveau.
Il faut que tu itères tous les items de la liste et que tu regardes la valeur de la propriété code de chacun.
Si tu trouves, tu arrêtes la boucle et tu agis en conséquence, si tu ne trouves pas tu agis autrement.
Arrêter la boucle est important car s’il y a 10 000 items et que celui que tu cherches est le centième, cela t’évite 9 900 itérations inutiles.
dana2019
Messages postés
21
Date d'inscription
lundi 20 avril 2020
Statut
Membre
Dernière intervention
15 mai 2020
22 avril 2020 à 10:37
22 avril 2020 à 10:37
J'ai fais un truc de même mais cela ne marche pas ma proprieté CodeIdentification se trouve dans ma classe medecin.cs
public void afficherUnmedecin() { int code; Console.WriteLine("Code d'identification:"); code = Convert.ToInt32(Console.ReadLine()); foreach (Medecin medecin in _listeMedecin) { if (medecin.CodeIdentification==code) { Console.WriteLine("Code d'identification" + code + "\n"); Console.WriteLine("Nom " + medecin.Nom); } else { throw new Exception("Le medecin n'existe pas"); } } }
Whismeril
Messages postés
19024
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
18 avril 2024
928
22 avril 2020 à 11:07
22 avril 2020 à 11:07
Supposons que le médecin que tu cherches ne soit pas le premier.
Le test sur le premier est donc false, ça va donc dans le else, donc ça génère une erreur.
Ce n’est pas ce que je t’ai proposé.
Avant de réagir au fait que le médecin soit absent de la liste (générer une erreur dans ton cas), il faut avoir testé toute la liste.
Par exemple avant la boucle, initialiser un bool à false.
Si tu trouves, te le mets true et tu sors de la boucle (instruction break). Si tu ne trouves pas tu ne fais rien.
Après la boucle, tu vérifies la valeur de ce bool, false pas d’occurence, true occurrence
Le test sur le premier est donc false, ça va donc dans le else, donc ça génère une erreur.
Ce n’est pas ce que je t’ai proposé.
Avant de réagir au fait que le médecin soit absent de la liste (générer une erreur dans ton cas), il faut avoir testé toute la liste.
Par exemple avant la boucle, initialiser un bool à false.
Si tu trouves, te le mets true et tu sors de la boucle (instruction break). Si tu ne trouves pas tu ne fais rien.
Après la boucle, tu vérifies la valeur de ce bool, false pas d’occurence, true occurrence