Salut,
Aujourd'hui j'ai décidé de poster sur le forum pour aborder certains point que notre bon Mr Lietard a mis de côté dans le cours d'amphi.
Si jele fait c'est parce que notre prof le prof du groupe H2 de TP a abordé ces points et pas celui du groupe H2.
1er point, les boules do..while, en algorithmie on pourrait traduire ça par faire..tant que
évidemment ça n'existe pas en algo n'ecrivez pas ça sur vos fueille.
La boucle do while est pratique pour faire un menu, du style:
1- Sauvegardez une partie
2-Charger une partie
3-Quitter
La syntaxe est simple:
- Code:
-
do
{
/*instruction*/
}while(/*condition*/);
Attention au ";" à la fin du while, si vous ne l'ecrivez pas le compilateur va vous insulter.
La principale différence avec la boucle while c'est le fait que on execute au moin une fois la boucle avant d'analyser la condition d'arrêt, ce qui est pratique pour les menu justement.
on pourrais imaginer un truc comme ça.
- Code:
-
#include <stdio.h>
#include <stdlib.h>
int main()
{
int choix;
do
{
puts("1-Charger partie");
puts("2-Nouvelle partie");
puts("3-Quitter");
puts("Votre choix : ");
scanf("%d", &choix");
if(choix == 1)
chargerPartie();
else if(choix == 2)
nouvellePartie();
else if(choix == 3)
exit(EXIT_SUCCESS);
else
puts("Vueillez entrer une valeur correcte!");
} while (choix < 1 || choix > 3);
return EXIT_SUCCESS;
}
Voila comment on se sert d'une boucle do while, pour faire encore mieux on pourrais remplacer les if par un switch, mais c'est pas le but aujourd'hui =).
Les énumérations.
Les énumérations sont une autre manières de créer ses propre type de variable, en cours on a vu les structures, et bien il y a aussi les énumérations. C'est très simple à utiliser et à comprendre, c'est en fait une liste de valeur possible pour une variable.
Voici la syntaxe:
- Code:
-
typedef enum{ FALSE, TRUE};
Plus simple tu meurs.
Ici le compilateur donne directement une valeur à nos variable FALSE et TRUE, en partant de 0. Donc FALSE vaut 0 et TRUE vaut 1.
J'ai pris cet exemple parce que c'est celui que le prof nous à donné en TP. En C++, le type booléen existe mais pas en C, c'est une manière de contourner le problème.
L'utilité des énumérations, c'est que le code devient très lisible et compréhensible au premier coup d'oeil. De plus ce n'est vraiment pas très compliqué à mettre en place.
On peut aussi si on le désir donner nos propre valeur à nos variable, comme ceci.
- Code:
-
typedef enum{ JEUNE = 5, PREADO = 12, ADO = 16, ADULTE = 18, VIEUX = 80};
Voila, ce qui donn e par exemple dans une condition:
- Code:
-
if (age == ADO)
{
/*instruction*/
}
Ce qui est plus lisible que:
- Code:
-
if (age == 16)
{
/*instruction*/
}
En gros, si vous avez besoin de connaitre la valeur de vos variables/constantes, utilisez des #define, si vous vous en foutez utilisez enum, qui done des valeurs par défauts à ce qu'on lui donne.
Voila, bonne fin de week end =)