bloc1:csharpa1
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
bloc1:csharpa1 [2021/09/30 11:25] – [Ajout de cartouche] techer.charles_educ-valadon-limoges.fr | bloc1:csharpa1 [2021/09/30 11:41] (Version actuelle) – [Outil de débogage :] techer.charles_educ-valadon-limoges.fr | ||
---|---|---|---|
Ligne 327: | Ligne 327: | ||
</ | </ | ||
{{ : | {{ : | ||
+ | |||
+ | ===== Etape 9 ===== | ||
+ | |||
+ | ==== Tests de l' | ||
+ | |||
+ | Lorsqu' | ||
+ | |||
+ | Le but est de voir si le programme fonctionne quelle que soit la situation. Il est généralement impossible de tester | ||
+ | |||
+ | Dans l' | ||
+ | * trouver la valeur en plusieurs essais (cas classique) ; | ||
+ | * trouver la valeur au premier essai (cas particulier car le premier essai a été traité différemment, | ||
+ | * saisir un caractère au lieu d'un nombre (comportement inattendu). | ||
+ | <WRAP center round todo> | ||
+ | **test** | ||
+ | Essayez les 2 premiers cas qui ne doivent pas poser de problème. Essayez ensuite le dernier cas en tapant une lettre au lieu d'un nombre (dans la valeur, mais le problème sera identique dans l' | ||
+ | </ | ||
+ | |||
+ | Le programme s' | ||
+ | <code c#> | ||
+ | valeur = int.Parse(Console.ReadLine()); | ||
+ | </ | ||
+ | et le message d' | ||
+ | |||
+ | La ligne de code permet de réaliser une saisie, puis de la transformer (**transtyper**) en type **int** (entier) pour pouvoir l' | ||
+ | |||
+ | Le problème vient du fait qu'une lettre est saisie et que le programme tente de la convertir en **int**, ce qui n'est pas possible. | ||
+ | |||
+ | Pour éviter l' | ||
+ | {{ : | ||
+ | |||
+ | ==== Tests de l' | ||
+ | Voilà comment fonctionne la capture d' | ||
+ | <code c#> | ||
+ | try | ||
+ | { | ||
+ | // contenant le code qui peut poser problème | ||
+ | } | ||
+ | catch | ||
+ | { | ||
+ | // contenant le code à exécuter, en cas d' | ||
+ | } | ||
+ | </ | ||
+ | Commençons par la première saisie (valeur). L' | ||
+ | <code c#> | ||
+ | bool correct = false; | ||
+ | // saisie du nombre à chercher | ||
+ | while (!correct) | ||
+ | { | ||
+ | try | ||
+ | { | ||
+ | Console.Write(" | ||
+ | valeur = int.Parse(Console.ReadLine()); | ||
+ | correct = true; | ||
+ | } | ||
+ | catch | ||
+ | { | ||
+ | Console.WriteLine(" | ||
+ | } | ||
+ | } | ||
+ | Console.Clear(); | ||
+ | </ | ||
+ | Le signe " | ||
+ | Remarquez une nouvelle erreur : sur la ligne de code "while (essai != valeur)", | ||
+ | <WRAP center round todo> | ||
+ | **test** | ||
+ | |||
+ | Vérifiez qu'en saisissant une lettre, le message d' | ||
+ | |||
+ | </ | ||
+ | Faites les mêmes modifications pour la saisie de l' | ||
+ | <WRAP center round important> | ||
+ | **test** | ||
+ | |||
+ | Vérifiez que tout le programme fonctionne correctement. Essayez de saisir une lettre lors du premier essai, et aussi lors des essais suivants. Vérifiez aussi que le nombre d' | ||
+ | </ | ||
+ | |||
+ | Vous avez remarqué que du code se répète : vous apprendrez plus tard comment optimiser le code pour éviter ce genre de répétition. | ||
+ | {{ : | ||
+ | |||
+ | ===== Etape 10 ===== | ||
+ | |||
+ | ==== Outil de débogage : ==== | ||
+ | |||
+ | Tous les IDE possèdent un outil de débogage qui permet une exécution pas à pas du programme avec vérification de l' | ||
+ | |||
+ | Même si le programme est opérationnel, | ||
+ | === Point d' | ||
+ | Il est possible de placer un ou plusieurs points d' | ||
+ | {{ : | ||
+ | La ligne du point d' | ||
+ | === Démarrage du débogueur : === | ||
+ | |||
+ | Il est alors possible de lancer le débogueur : menu " | ||
+ | {{ : | ||
+ | A partir de là, vous allez pouvoir consulter l' | ||
+ | === Etat des variables : === | ||
+ | |||
+ | Maintenant que le programme s'est arrêté, observez la fenêtre du bas qui donne l' | ||
+ | {{ : | ||
+ | Ne tenez pas compte de ' | ||
+ | |||
+ | === Exécution pas à pas : === | ||
+ | |||
+ | Vous allez maintenant avancer dans l' | ||
+ | {{ : | ||
+ | Cela permet de repérer les changements qui viennent de se faire. | ||
+ | |||
+ | Continuez d' | ||
+ | {{ : | ||
+ | === Exécution rapide ou arrêt : === | ||
+ | |||
+ | A tout moment, il est possible d' | ||
+ |
bloc1/csharpa1.1632993946.txt.gz · Dernière modification : 2021/09/30 11:25 de techer.charles_educ-valadon-limoges.fr