IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Aide introduction aux tableaux


Sujet :

C++

  1. #1
    Membre actif
    Inscrit en
    Septembre 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 39
    Par défaut Aide introduction aux tableaux
    Bonjour à tous ,je viens à peine de commençer les tableaux et je dois dire que ce n'est pas mon fort !
    Tout d'abord ,je dois écrire une fonction (nombreValide) qui étant donné un entier n demande à l'utilisateur de saisir un entier tant que celui-ci n'est pas compris entre 1 et n-1.Cette fonction renverra cette entier.
    Ensuite ,je dois écrire la fonction initialiserNim qui demande à l'utilisateur de saisir le nombre de tas n ,puis qui assigne 1 au tas 1 ,2 au tas2 , ... , n au tas n en utilisation le prototype: void initialiserNim(int nim[], int&n).
    Ensuite ,je dois écrire la fonction qui affiche le jeu de nim:
    Par exemple :
    Tas 1 : l
    Tas 2: ll
    Tas 3 : l
    Tas 4 :ll
    Tas 5: lllll
    Tas 6: lll
    en utilisant le prototype : void afficherNim(int nim[],int n)
    Sur cette dèrnière fonction ,je suis complètement bloqué!

    Donc voici mon code source mais je ne pense pas qu'il sois juste :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    #include<iostream>
    #include<cstdlib>
    using namespace std;
     
    int nombreValide(int n)
    {
        int nb;
        cout << "entrer un entier " << endl;
        cin >> nb;
        while (nb<1 && nb>(n-1) )
        {
                   cout << " enter un autre entier " << endl;
                   cin >> nb ;
                   }
        return nb ;
    }
     
    void initialiserNim(int nim[],int &n)
    {
         int i;
         cout << " Saisissez le nombre de tas " << endl;
         cin >> n;
         for (i=0;i<n;i++)
         nim[i]=nim[n];
         }
     
     
     
    int main()
    {
        const int CTaille=100;
        int T[CTaille];
        int n,d;
        initialiserNim(T,n);
        nombreValide(n);
     
    }
    Merci beaucoup de votre aide.

  2. #2
    Membre actif
    Inscrit en
    Septembre 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 39
    Par défaut
    Help please !
    Merci beaucoup .

  3. #3
    Rédacteur

    Avatar de Davidbrcz
    Homme Profil pro
    Ing Supaéro - Doctorant ONERA
    Inscrit en
    Juin 2006
    Messages
    2 307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ing Supaéro - Doctorant ONERA

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 307
    Par défaut
    Tu up au bout de 3 H ?
    Hqhq
    Sinon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    const int CTaille=100;
    int T[CTaille];
    C'est pas censé passer en C++.En effet c'est du VLA et c'est disponible qu'en C 99.
    Pour un tableau de taille dynamque T , il faut faire en C++ :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    type *ptr= new type[T];
    Ensuite, dans nombreValide je ne voit pas à quoi te sert n !!

    Enfin , je pense que tu as inversé l'ordre d'appel de initialiserNim et de nombreValide
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  4. #4
    Membre actif
    Inscrit en
    Septembre 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 39
    Par défaut
    En fait si sa passe en c++ mais j'ai pasréussi sauf la fonction 2 et 3 c'est-à-dire :
    "Ecrire la fonction nim qui demande à l'utilisateur de saisir le nombre de tas n,puis qui assigne 1 au tas 1,2 au tas 2,..., n au tas n en utilisant le prototype :
    void initialiserNim(int nim[],int &n) "
    puis :
    "Ecrire la fonction nim3 qui affiche le jeu de nim.Par exemple :
    Tas 1 : |
    Tas 2 : ||
    Tas 3 : |||
    etc...
    en utilisant le prototype :
    void afficherNim(int nim[],int n)"
    Comment on fait svp ??
    Merci

  5. #5
    Membre éclairé Avatar de gelam
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2003
    Messages : 69
    Par défaut
    Pour la fonction de saisie protégée:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    int nombreValide(int n)
    {
        int nb;
        cout << "entrer un entier " << endl;
        cin >> nb;
        while (nb<1 || nb>=n )
        {
                   cout << " enter un autre entier " << endl;
                   cin >> nb ;
        }
        return nb ;
    }

  6. #6
    Membre éclairé Avatar de gelam
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2003
    Messages : 69
    Par défaut
    Pour l'initialisation des tas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    void initialiserNim(int nim[],int n)
    {
         int i;
         // On pose 0 dans nim[0], 1 dans nim[1], ...
         for (i=0;i<n;i++)
              nim[i]=i;
    }

  7. #7
    Membre éclairé Avatar de gelam
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    69
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2003
    Messages : 69
    Par défaut
    Pour l'affichage :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    void afficherNim(int nim[],int n)
    {
        int i ;
        for( i=0; i<n; i++ )
        {
            cout << "Tas " << i << " : " ;
            for( k=0; k<nim[i]; k++ )
            {
                cout << '|' ;
            }
            cout << endl ;
        }
    }
    Mais ne serai-je pas en train de faire ton boulot ?
    Tu devrais reprendre tes notes de cours.

    Bonne programmation

Discussions similaires

  1. aide en rapport aux tableaux
    Par charlie59 dans le forum LabVIEW
    Réponses: 7
    Dernier message: 14/06/2012, 18h13
  2. [DOM] Accès aux tableaux d'éléments
    Par Herode dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 08/06/2006, 15h04
  3. [vb excel]Aide avec les tableaux
    Par Mugette dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/09/2005, 12h07
  4. [LG]Introduction aux pointeurs
    Par John_win dans le forum Langage
    Réponses: 7
    Dernier message: 22/11/2003, 11h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo