Forum du groupe H
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Forum du groupe H

Forum d'entraide pour le groupe H de l'IUT informatique de Lannion.
 
AccueilAccueil  Dernières imagesDernières images  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
Le deal à ne pas rater :
Cartes Pokémon EV6.5 : où trouver le Bundle Lot 6 Boosters Fable ...
Voir le deal

 

 Un plus sur les boucles et sur les constantes

Aller en bas 
AuteurMessage
ezano
Admin
ezano


Messages : 59
Date d'inscription : 26/11/2009
Age : 34
Localisation : Lannion

Un plus sur les boucles et sur les constantes Empty
MessageSujet: Un plus sur les boucles et sur les constantes   Un plus sur les boucles et sur les constantes Icon_minitimeDim 6 Déc - 14:27

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 Very Happy é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 =)
Revenir en haut Aller en bas
https://forum-du-groupe-h.forumactif.com
 
Un plus sur les boucles et sur les constantes
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum du groupe H :: Unité d'enseignement 1 :: Algorithmie-
Sauter vers: