bloc1:fichesavoirsfonction1
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:fichesavoirsfonction1 [2022/11/08 14:59] – [Ajout du paramètre lors de l’appel de la fonction saisie] techer.charles_educ-valadon-limoges.fr | bloc1:fichesavoirsfonction1 [2023/11/08 12:51] (Version actuelle) – techer.charles_educ-valadon-limoges.fr | ||
|---|---|---|---|
| Ligne 11: | Ligne 11: | ||
| * et le contrôle de la saisie dans la boucle: | * et le contrôle de la saisie dans la boucle: | ||
| - | <code c#> | + | <code c# fonction.cs> |
| static void Main(string[] args) { | static void Main(string[] args) { | ||
| // déclaration | // déclaration | ||
| Ligne 139: | Ligne 139: | ||
| ==== Programme du nombre caché avec la procédure saisie ==== | ==== Programme du nombre caché avec la procédure saisie ==== | ||
| <code c#> | <code c#> | ||
| + | |||
| + | static int essai; | ||
| + | |||
| static void Main(string[] args) { | static void Main(string[] args) { | ||
| // déclaration | // déclaration | ||
| Ligne 274: | Ligne 277: | ||
| **Exercice 2 :** | **Exercice 2 :** | ||
| - | Reprenez le programme de l' | + | Reprenez le programme de l' |
| </ | </ | ||
| ===== Rendre la fonction paramétrable ===== | ===== Rendre la fonction paramétrable ===== | ||
| Ligne 361: | Ligne 364: | ||
| La fonction est paramétrée et le code de la fonction **Main()** est nettement plus court. | La fonction est paramétrée et le code de la fonction **Main()** est nettement plus court. | ||
| + | <WRAP center round info> | ||
| + | Dépôt GitHub : https:// | ||
| + | </ | ||
| + | |||
| + | ==== Correction ==== | ||
| + | [[correction|Correction]] | ||
| + | <code c#> | ||
| + | using System; | ||
| + | class Program | ||
| + | { | ||
| + | static int saisie(string message) | ||
| + | { | ||
| + | bool correct = false; | ||
| + | int chiffre = 0; | ||
| + | while (!correct) | ||
| + | { | ||
| + | try | ||
| + | { | ||
| + | Console.Write(message); | ||
| + | chiffre = int.Parse(Console.ReadLine()); | ||
| + | correct = true; | ||
| + | } | ||
| + | catch | ||
| + | { | ||
| + | Console.WriteLine(" | ||
| + | } | ||
| + | } | ||
| + | return chiffre; | ||
| + | } | ||
| + | |||
| + | public static void Main(string[] args) | ||
| + | { | ||
| + | // déclaration | ||
| + | int valeur = 0, essai = 0, nbre = 1; | ||
| + | |||
| + | // saisie du nombre à chercher | ||
| + | valeur = saisie(" | ||
| + | |||
| + | Console.Clear(); | ||
| + | // saisie du premier essai | ||
| + | essai = saisie(" | ||
| + | |||
| + | // boucle sur les essais | ||
| + | while (essai != valeur) | ||
| + | { | ||
| + | // test de l’essai par rapport à la valeur à chercher | ||
| + | if (essai > valeur) | ||
| + | { | ||
| + | Console.WriteLine(" | ||
| + | } | ||
| + | else | ||
| + | { | ||
| + | Console.WriteLine(" | ||
| + | } | ||
| + | // saisie d’un nouvel essai | ||
| + | essai = saisie(" | ||
| + | // compteur d’essais | ||
| + | nbre++; | ||
| + | } | ||
| + | // valeur trouvée | ||
| + | Console.WriteLine(" | ||
| + | Console.ReadLine(); | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| ==== Aller plus loin avec plusieurs paramètres ==== | ==== Aller plus loin avec plusieurs paramètres ==== | ||
| Ligne 372: | Ligne 440: | ||
| </ | </ | ||
| - | <WRAP center round todo> | ||
| - | **Exercice 3 :** | ||
| - | |||
| - | * Reprenez le programme de l' | ||
| - | * Modifiez la fonction **saisie()** pour qu’elle reçoive 3 paramètres : | ||
| - | * le **message à afficher** (jusqu’au point d’interrogation inclus) | ||
| - | * le premier caractère à contrôler qui est **O**; | ||
| - | * le 2ème caractère à contrôler qui est **N**. | ||
| - | * Modifiez le contenu de la fonction **saisie()** pour prendre en compte ces paramètres. | ||
| - | * Modifiez aussi les appels de la fonction, dans le **Main()**, pour envoyer les bonnes valeurs. | ||
| - | </ | ||
| - | |||
| - | <WRAP center round todo> | ||
| - | **Exercice 4 :** | ||
| - | * Créez une nouveau projet à partir de ce dépôt Git https:// | ||
| - | * Ajoutez la fonction **saisie()** écrite dans l’exercice précédent ; | ||
| - | * Modifiez la fonction **Main()** pour utiliser la fonction **saisie()**. | ||
| - | </ | ||
bloc1/fichesavoirsfonction1.1667915956.txt.gz · Dernière modification : 2022/11/08 14:59 de techer.charles_educ-valadon-limoges.fr
