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 :

Question sur tableau à deux dimenssions


Sujet :

C++

  1. #1
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 40
    Points : 43
    Points
    43
    Par défaut Question sur tableau à deux dimenssions
    Bonjour,
    je suis actuellement arrivé au chapitre des tableaux de mon bouquin. A la fin de ce chapitre j'ai donc décidé de faire des testes, et un de ces testes me pose problème.
    Voilà:

    J'aimerai que l'utilisateur entre un entier, et que soit créé: X tableau de 5 cases chacuns. X est la valeur entrée par l'utilisateur.

    Voici ce que j'ai fait:

    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
    int main()
    {
        int valeur;
        std::cout << "Combien de tableau voulez vous: ";
        std::cin >> valeur;
     
        int* tab[valeur][5];
     
        for(int i = 0; i<valeur; i++)
        {
            for(int j = 0; j < 5; j++)
            {
                tab[i][j] = new int(2);
            }
        }
        for(int i = 0; i < valeur; i++)
        {
            for(int j = 0; j < 5; j++)
            {
                delete tab[i][j];
            }
        }
     
    	return 0;
    }
    Apparament ça a l'air de compiler chez moi, et les valeurs quand j'ai testé étaient celles que j'attendais. Néanmoins, j'aimerai savoir si c'est correct de procéder de cette façon ? Merci d'avance.

  2. #2
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Combien de fois faudra-t'il répéter que les tableaux en C++, c'est std::vector<>. Ceci dit.

    Même si j'ajoute les en-têtes nécessaires, ça ne compile pas:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $ g++ -Wall -Wextra -pedantic-errors -std=c++98  loak.cpp
    loak.cpp: In function 'int main()':
    loak.cpp:7: error: ISO C++ forbids variable-size array 'tab'
    Il y a une extension de g++ qui permets les tableaux de taille variable, mais elle n'est pas normalisée.

    Pourquoi est-ce que tu alloues dynamiquement le contenu de ton tableau, si tu veux un tableau d'entiers, utilises-en un.

  3. #3
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 40
    Points : 43
    Points
    43
    Par défaut
    Combien de fois faudra-t'il répéter que les tableaux en C++, c'est std::vector<>.
    je suis actuellement arrivé au chapitre des tableaux de mon bouquin.
    ... j'en suis pas encore à std::vector<> je ne suis pas très avancé.

    Pourquoi est-ce que tu alloues dynamiquement le contenu de ton tableau, si tu veux un tableau d'entiers, utilises-en un.
    C'était juste pour faire des testes, je l'ai précisé plus haut. Et j'ai bien eu la réponse à ma question je te remercie. J'avais un doute quand à la déclaration d'un tableau avec pour taille une variable.
    Voilà voilà, merci encore.

  4. #4
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Loack-
    ... j'en suis pas encore à std::vector<> je ne suis pas très avancé.
    Mais tu manipules les pointeurs et les tableaux... C'est l'ordre inverse de ce qu'il faudrait. Mais je sais, tu n'es pas responsable du contenu du bouquin.

  5. #5
    Membre du Club
    Inscrit en
    Août 2006
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 40
    Points : 43
    Points
    43
    Par défaut
    Je viens de regarder dans mon bouquin quand vector sera étudié. Et il est étudié 3 chapitres avant la fin du bouquin, dans le chapitre "Les modèles".
    Enfin je vais prendre de l'avance et allé voir ce qu'est vector.

  6. #6
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 281
    Points : 11 024
    Points
    11 024
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    Combien de fois faudra-t'il répéter que les tableaux en C++, c'est std::vector<>.
    Jusqu'à ce qu'enseignants et autres personnes qui écrivent des bouquins le comprennent ...

  7. #7
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par Luc Hermitte
    Jusqu'à ce qu'enseignants et autres personnes qui écrivent des bouquins le comprennent ...
    Si je n'étais pas persuadé que pour écrire un bon bouquin d'enseignement, il faut de l'expérience en enseignement, j'en écrirais un.

    Je sais, tu vas me dire que le résultat ne risque pas d'être pire qu'avec ceux qui enseignent et écrivent des bouquins sans avoir l'expérience du sujet. Mais moi, j'aime le travail bien fait.

  8. #8
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 281
    Points : 11 024
    Points
    11 024
    Par défaut
    Je comprends parfaitement. Même avec ma toute petite expérience en enseignement (je n'ai pas dit "pédagogie"), je ne m'y lancerai pas comme ça.

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    620
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 620
    Points : 453
    Points
    453
    Par défaut
    On peut faire un travail groupé si vous voulez : je ferais le naïf relecteur (j'ai une petite expérience d'enseignement, et même du C à des IUT génie mécanique pas plus intéressés que ça ) et vous, vous seriez les cerveaux (au passage, j'apprendrai moi-même). Proposition sérieuse, par-delà les blagues à deux balles.

    Hugo

  10. #10
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par [Hugo]
    On peut faire un travail groupé si vous voulez : je ferais le naïf relecteur (j'ai une petite expérience d'enseignement, et même du C à des IUT génie mécanique pas plus intéressés que ça ) et vous, vous seriez les cerveaux (au passage, j'apprendrai moi-même). Proposition sérieuse, par-delà les blagues à deux balles.
    Il me manque une idée claire du public, condition essentielle pour écrire un livre ou préparer un cours.

    Il me manque l'expérience d'avoir donné cours, d'avoir confirmé que ce que nous préconisons est réellement meilleur auprès d'un plus large auditoire que les deux ou trois personnes dont on a pu suivre de loin la progression, d'avoir rafiné la progression, d'avoir fait évoluer une pratique en fonction de ce qui ne passe pas et de ce qui passe, d'avoir pu établir une base d'exercices, d'avoir résolu les problèmes dont on ne soupconne l'existance qu'après les avoir rencontrés, d'avoir trouvé le bon dosage entre ingrédients.

    Il me manque le temps. D'après mes expériences de rédaction de documents importants, préparer ce que j'ai en tête me demanderais environ un an à temps complet. Et même si je l'ai prise en compte, la loi d'Hofstadter s'appliquera vraissemblablement... C'est trop lent pour servir à quelqu'un en cours de rédaction.

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2006
    Messages
    620
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2006
    Messages : 620
    Points : 453
    Points
    453
    Par défaut
    Je peux comprendre toutes ces objections... cétait juste au cas où...

    Hugo

  12. #12
    Membre expert
    Avatar de hiko-seijuro
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 011
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 011
    Points : 3 065
    Points
    3 065
    Par défaut
    Jean-Marc.Bourguet >> je penses que si tu essaie de raisonner de telle manière qu'un debutant puisse comprendre ton bouquin, tu n'as pas besoin de faire partie du corps enseignant pour faire un livre pedagogue

  13. #13
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 629
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 629
    Points : 30 692
    Points
    30 692
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    Si je n'étais pas persuadé que pour écrire un bon bouquin d'enseignement, il faut de l'expérience en enseignement, j'en écrirais un.
    Je suis, presque intimement, persuadé que l'expérience pratique est bien plus importante que l'expérience en enseignement... Mais bon, ce n'est que mon avis... mais je le partage
    Citation Envoyé par Jean-Marc.Bourguet
    Je sais, tu vas me dire que le résultat ne risque pas d'être pire qu'avec ceux qui enseignent et écrivent des bouquins sans avoir l'expérience du sujet. Mais moi, j'aime le travail bien fait.
    Il serait au contraire, en tout état de cause, bien meilleur: s'il est facile de prendre de mauvaises habitudes, il est très difficile d'en changer par la suite...

    Si on donne, dés le départ, de bonnes habitudes, elles resteront fortement ancrées dans l'esprit de l'auditoire
    Citation Envoyé par Luc Hermitte
    Je comprends parfaitement. Même avec ma toute petite expérience en enseignement (je n'ai pas dit "pédagogie"), je ne m'y lancerai pas comme ça.
    Le sens de la pédagogie est, à mon sens toujours, bien plus important que l'habutude de l'enseignement elle-meme...

    Etre capable, entre autre, de donner des explication claires, avec si besoin des "images fortes", de nature à faciliter la compréhension, quitte à sacrifier un peu à la "précision" des propos est clairement de nature à permettre au lecteur de se faire une idée correcte -à défaut d'être précise et tout à fait juste- du concept que l'on tente de lui expliquer

    Quand on voit le nombre et la qualité des réponses (hors trolls éventuels) que vous avez fournies sur le forum, mon sentiment personnel est, sans flagornerie, que vous seriez certainement en mesure d'écrire quelque chose à forte valeur de pédagogie et de "manières correctes"...Bref un ouvrage didactique de tres bonne qualité...

    Au dela de cela, le fait qu'il faudrait des journées de 48 heures pour pouvoir écrire un tel bouquin en plus de tout le reste est, bien entendu, une excuse des plus compréhensibles

    Bref, je rejoint pleinement (et sans vouloir forcer la main à quiconque) l'avis de hiko-seijuro... Mais, là encore, je ne fait qu'émettre un avis perso

  14. #14
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Points : 16 213
    Points
    16 213
    Par défaut
    J'ai pour ma part une très légère expérience de l'enseignement (des cours de quelques heures, cette année, 21h, c'est le plus long à ce jour), ce qui ne me permet pas d'assurer un véritable suivi, et est donc plus une introduction qu'un véritable cours.

    J'ai bien tenté à une époque d'écrire un livre. Principalement parce que je n'arrivais pas à trouver en français des documents qui me satisfassent. Par contre, je confirme que ça prend un temps monstre, et demande une motivation de tous les instants... Ou alors, il faudrait que je sois au chômage ou la retraite...

    Par contre, je ne suis pas certain qu'un bon enseignant fasse obligatoirement un bon écrivain. Il manque à un écrivain le feed-back, qui lui permet de s'adapter à chaqe audience. C'est bien plus complexe... C'est vrai qu'avoir déjà utilisé son cours sur diverses audiences permet de voir les plus gros problèmes, mais ça ne résoud pas tout.

  15. #15
    Expert éminent sénior
    Avatar de Luc Hermitte
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    5 281
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Août 2003
    Messages : 5 281
    Points : 11 024
    Points
    11 024
    Par défaut
    Et suivant les audiences tu adaptes les exemples et autres exos....

    Une année, j'avais eu l'occasion d'avoir un public d'automaticiens dans le cadre de l'enseignement du C++. Du coup, les exemples relatifs à l'abstraction, l'encapsulation, l'héritage, ... étaient tous choisis dans ma perception (d'informaticien) du monde de l'automatique -- aujourd'hui avec le recul, c'était peut-être bien une des seules choses à garder de ce cours.

    Sinon, je suis complètement d'accord avec ce que dit Jean-Marc : un cours on l'adapte en fonction des "réponses" que les "étudiants" nous renvoient. Parfois on adapte en direct, parfois d'une année sur l'autre.

    Quant au temps, c'est définitivement un élément discriminant. Un élement tel qui me fait dire que traduire AC++ serait bien plus réaliste.

  16. #16
    Inactif  

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    534
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 534
    Points : 403
    Points
    403
    Par défaut
    Bonsoir,

    Il faut sans doûte revenir à la question initiale de loack :
    J'aimerai que l'utilisateur entre un entier, et que soit créé: X tableau de 5 cases chacuns. X est la valeur entrée par l'utilisateur.
    Et faute de ne pouvoir répondre de manière pragmatique, ou concrète à ce sujet, voilà que nous nous engouffrons dans des considérations pédagogiques, ou théoriques.
    La demande est particulèrement simple ( pour une fois ! ) et chacun d' entre nous pourrait apporter du code pour résoudre la situation.

    Malheureusement nous sommes tous soit trop flémmards ou désintéréssés pour ne jamais répondre à la demande, en emprûntant le chemin de la critique théorique.

    Personnellement je pourrais produire le code attendu, mais j' ai la flemme, ou encore je pourrais penser que l' enjeu n' en vaut pas la chandelle.

    C' est là une question du forum, jusqu' où peut-on donner, éclairer ? Certains semblent généreux, d' autres mesquins .

    Mais je ne crois que le faire-valoir théorique de certains, peut faire anvancer le "schmilblick".

    Cordialement.

  17. #17
    Membre averti
    Avatar de David Fleury
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 253
    Points : 307
    Points
    307
    Par défaut
    Pour la forme, une réponse possible à la question.

    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
     
    #include <iostream>
    #include <vector>
    using namespace std;
     
    int main()
    {
        vector< vector< int > > listTableau;
     
        int nbTableau;
        cout << "Combien de tableau voulez vous: ";
        cin >> nbTableau;
     
        for ( int i = 0; i < nbTableau; ++i )
        {
            vector< int > tmp;
            for ( int v = 0; v < 5; ++v )
            {
                int t;
                cin >> t;
                tmp.push_back( t );
            }
     
            listTableau.push_back( tmp );
        }
    }

  18. #18
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Citation Envoyé par koala01
    Je suis, presque intimement, persuadé que l'expérience pratique est bien plus importante que l'expérience en enseignement... Mais bon, ce n'est que mon avis... mais je le partage
    Ce n'est pas tellement une expérience d'enseignement en général qu'il me manque (j'ai enseigné à temps partiel pendant 5 ans après tout), qu'une expérience d'enseignement du C++.

    Si on donne, dés le départ, de bonnes habitudes, elles resteront fortement ancrées dans l'esprit de l'auditoire
    Il faut d'abord réussir à donner une habitude

    Etre capable, entre autre, de donner des explication claires, avec si besoin des "images fortes", de nature à faciliter la compréhension, quitte à sacrifier un peu à la "précision" des propos est clairement de nature à permettre au lecteur de se faire une idée correcte -à défaut d'être précise et tout à fait juste- du concept que l'on tente de lui expliquer
    Dans ce cadre, j'ai un gros défaut: j'ai une tendance marquée à l'exhaustivité et à la recherche des cas limites et tordus.

    Quand on voit le nombre et la qualité des réponses
    C'est une chose que de répondre individuellement à des questions qu'on a choisies, c'est une autre que de rédiger un ouvrage efficace sans interactions.

  19. #19
    Membre averti
    Avatar de David Fleury
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 253
    Points : 307
    Points
    307
    Par défaut
    Citation Envoyé par Jean-Marc.Bourguet
    C'est une chose que de répondre individuellement à des questions qu'on a choisies, c'est une autre que de rédiger un ouvrage efficace sans interactions.
    Un site ne permetrait-il pas d'ajouter de l'intéraction à la mise au point d'un livre ?

    Sutter avec GoW pourrait être un exemple de "livre" interactif dont une instance à été figé sur papier.

    Sinon, il semble clair que l'écriture d'un livre est long, pourquoi ne pas traduire des ouvagres existant de bonne qualité (AC++ comme le suggère Luc?)

  20. #20
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Points : 16 213
    Points
    16 213
    Par défaut
    Citation Envoyé par Hylvenir
    Sinon, il semble clair que l'écriture d'un livre est long, pourquoi ne pas traduire des ouvagres existant de bonne qualité (AC++ comme le suggère Luc?)
    Parce qu'il faut un accord de l'auteur/éditeur initial ? Parce que dans ce cas, la traduction ne sera probablement pas diffusable librement ?

Discussions similaires

  1. ASP/VB.NET question sur tableau créé dynamiquement
    Par julygou dans le forum ASP.NET
    Réponses: 1
    Dernier message: 05/08/2008, 10h05
  2. [HTML] Question sur tableau
    Par Cheeper dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 19/05/2008, 14h03
  3. (Tres debutant) :Question sur Tableau array
    Par alexwolf dans le forum Langage
    Réponses: 5
    Dernier message: 28/11/2007, 13h49
  4. Question sur tableau
    Par Hurin dans le forum C#
    Réponses: 2
    Dernier message: 21/08/2007, 17h03
  5. [langage] question sur tableau
    Par vince2005 dans le forum Langage
    Réponses: 1
    Dernier message: 24/10/2006, 14h12

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