Bonjour, cliquez-ici pour vous inscrire et participer au forum.
  • Login:



+ Répondre à la discussion
Page 2 sur 3 PremièrePremière 2 DernièreDernière
Affichage des résultats 16 à 30 sur 45

Créer un tableau sur c++

  1. Wass06

    Date d'inscription
    octobre 2015
    Messages
    42

    Re : Créer un tableau sur c++

    Code:
    #include <iostream>
    const int N=200;
    using namespace std;
    
    struct Patientes
    {
        char nom;
        char prénom;
        int âge;
        float poids;
        float taille;
    };
    
    int main()
    {
        char nom[50], prénom[50];
        float âge,poids,taille;
     
        
        cout<<"Saisir le nom de la patiente : ";
        cin>>nom;
        
        cout<<"Saisir le prénom de la patiente : ";
        cin>>prénom;
        
        cout<<"Saisir l'âge de la patiente : ";
        cin>>âge;
        
        cout<<"Saisir le poids de la patiente : ";
        cin>>poids;
        
        cout<<"Saisir la taille de la patiente : ";
        cin>>taille;
    };
    
    Patientes tableau[200];
    int i;
    
    for (i = 0 ; i < N ; i++)   // Expected unqualified-id
    {
    tableau[i]={nom,prénom,âge,poids,taille}     // Unknown type name 'cout' // Expected unqualified-id
    }
        
    cout<<tableau[i]<<endl;

    -----

     


    • Publicité



  2. Jack

    Date d'inscription
    avril 2003
    Localisation
    Metz
    Messages
    16 230

    Re : Créer un tableau sur c++

    Les messages d'erreur sont normaux: tes variables et instructions doivent être dans une fonction, c'est à dire main si tu tu n'en a pas créé d'autres.

    Penses-tu que dans la structure, le nom et le prénom pourront tenir dans un seul caractère?
    Code:
    tableau[i]={nom,prénom,âge,poids,taille}
    On ne peut pas affecter des valeurs comme çà: il faut spécifier une case du tableau, puis un champ de la structure, par exemple:
    Code:
    tableau[i].age=age;
    En passant, évite les accents dans les noms de variables, c'est écrit dans n'importe quel cours de C++. Peut-être faudrait-il que tu commences par en acquérir les bases?
     

  3. Ikhar84

    Date d'inscription
    octobre 2016
    Localisation
    Avignon
    Âge
    40
    Messages
    392

    Re : Créer un tableau sur c++

    Un minimum de cours serait à suivre avant de poursuivre...

    Où finit le main ? (accolade fermante, et pourquoi un
    Cela ressemble plus à un micmac entre le C et le C++, sans en être vraiment.

    Regardez comment on accède aux elements d'un tableau (individuellement), notamment quand cet element est une structure...

    Les variables "temporaires" sont aussi inutiles, les données pouvant être entrées dans une boucle, a condition de prévoir une manière de sortir de la boucle
    ...
    Etudiez déjà ces points...

    Edit: grillé par Jack...
    Et pas vu les char dans la struct comme le note Jack...
    Note : pourquoi ne pas utiliser des string ou des pointeurs pour les chaines ?
    Dernière modification par Ikhar84 ; 25/12/2017 à 23h42.
    J'ai glissé Chef !
     

  4. Wass06

    Date d'inscription
    octobre 2015
    Messages
    42

    Re : Créer un tableau sur c++

    Oui je sais je n'ai pas de bases solides et je dois apprendre brusquement sur le tas.

    Pour l'accolade fermante du main, il faut la mettre après avoir créer le tableau pour pouvoir définir la variable "i" à l'intérieur du main c'est bien ça ?
    Je n'arrive pas à afficher le tableau, vous pouvez me dire pourquoi ?

    Code:
    #include <iostream>
    const int N=200;
    using namespace std;
    
    struct Patientes
    {
        char nom;
        char prenom;
        int age;
        float poids;
        float taille;
    };
    
    int main()
    {
        char nom[50], prenom[50];
        float age,poids,taille;
        int i;
        
        cout<<"Saisir le nom de la patiente : ";
        cin>>nom;
        
        cout<<"Saisir le prénom de la patiente : ";
        cin>>prenom;
        
        cout<<"Saisir l'âge de la patiente : ";
        cin>>age;
        
        cout<<"Saisir le poids de la patiente : ";
        cin>>poids;
        
        cout<<"Saisir la taille de la patiente : ";
        cin>>taille;
    
    Patientes tableau[200];
    
    for (i = 0 ; i < N ; i++)
    {
        tableau[i].nom=nom[20];
        tableau[i].prenom=prenom[20];
        tableau[i].age=age;
        tableau[i].poids=poids;
        tableau[i].taille=taille;
    }
        
    cout<<tableau[i]<<endl;  // Invalid operands to binary expression ('ostream' (aka 'basic_ostream<char>') and 'Patientes')
    
    
    };
     

  5. Jack

    Date d'inscription
    avril 2003
    Localisation
    Metz
    Messages
    16 230

    Re : Créer un tableau sur c++

    Il faut un minimum de bon sens pour programmer: tu saisis les informations d'UN SEUL PATIENT et tu veux remplir tout le tableau avec dans ta boucle for.

    Je répète également que char nom; veut dire que le nom est composé d'UN SEUL CARACTERE.

    Ikhar84 vient de te proposer d'utiliser la classe string. C'est une excellente idée et tu devrais en profiter.

    On ne met pas de ; après la dernière accolade.
     


    • Publicité



  6. Wass06

    Date d'inscription
    octobre 2015
    Messages
    42

    Re : Créer un tableau sur c++

    Vous n'avez pas un code/une correction à me proposer pour m'aider à résoudre mon problème ?
    Je pourrais de ce fait étudier chaque ligne et comprendre mes erreurs.
     

  7. Ikhar84

    Date d'inscription
    octobre 2016
    Localisation
    Avignon
    Âge
    40
    Messages
    392

    Re : Créer un tableau sur c++

    Citation Envoyé par Wass06 Voir le message
    Vous n'avez pas un code/une correction à me proposer pour m'aider à résoudre mon problème ?
    Je pourrais de ce fait étudier chaque ligne et comprendre mes erreurs.
    Outre ce qui a déjà été dit, proposer un code tout fait n'est pas la meilleure solution, du moins jusqu'à ce que tu ais avancé un peu...

    Commence par réflechir a ce qui t'est proposé:
    Pourquoi les "champs" nom et prénom de ta structure ne peuvent stocker qu'un seul caractère ?
    Profites en pour regarder ce qu'es un string.
    Pourquoi tu ne saisie qu'une fois les données, mais les "colle" dans toutes les structures de ton tableau ?
    Corrolaire: pourquoi dans un tableau de 200 elements tu ne peux pas parcourir 0 à 200 indices ?

    Quant a l'affichage:
    Ton instruction utilise un i qui n'a aucun sens, sorti du bloc for
    Et même si ton i avait un sens ici, tu demande à afficher une structure "brute" sans l'avoir "formaté" pour l'affichage auparavant, comment veux tu pouvoir l'afficher ?

    Réflechis à ces points et corrige ton code en conséquence, nous pourrons t'aider à aller plus loin, et même te montrer quelques bonnes pratiques de codage, avec un code clean et fonctionnel, l'utilisation de classes plutôt qu'une structure...
    Dernière modification par Ikhar84 ; 26/12/2017 à 01h33. Motif: Fôtes !
    J'ai glissé Chef !
     

  8. Bjrn

    Date d'inscription
    décembre 2017
    Messages
    7

    Re : Créer un tableau sur c++

    Bonjour à tous !

    Je suis exactement dans le même cas que Wass. J'ai un projet à réaliser en langage c++.
    Je n'ai suivis que quelques cours de c++ qui ne m'aident pas à débuter mon programme.

    Je dois commencer par stocker des données de x patients : à savoir le nom, prénom, l'âge, taille, poids, IMC, le taux de certaines hormones...
    Ces données serviront à poser le diagnostique d'une pathologie.

    Questions
    Pour cela, faut-il commencer par "struct" ?
    Autre question, j'ai compris qu'il fallait utiliser "vector" au lieu de "tableau". Il est donc créer un vecteur par patient ?


    Merci d'avance pour vos réponses, je répète que je débute totalement dans ce langage je vous prie donc de m'excuser si mes explications ne sont pas rigoureuses.
     

  9. pm42

    Date d'inscription
    juillet 2015
    Messages
    4 200

    Re : Créer un tableau sur c++

    Citation Envoyé par Bjrn Voir le message
    Je dois commencer par stocker des données de x patients : à savoir le nom, prénom, l'âge, taille, poids, IMC, le taux de certaines hormones...
    Ces données serviront à poser le diagnostique d'une pathologie.
    Pour cela, faut-il commencer par "struct" ?
    Oui. En fait, tu peux imaginer que tu vas faire une fiche patient papier : un formulaire qui contiendrait un champs appelé "nom" , un autre "prénom", etc que le médecin va remplir.
    Une struct : c'est la même chose c'est à dire des champs qu'on regroupe ensemble pour faire un ensemble cohérent, chaque champs a un nom, un type (taille est un entier en cm, nom est une chaine...)

    Citation Envoyé par Bjrn Voir le message
    Autre question, j'ai compris qu'il fallait utiliser "vector" au lieu de "tableau". Il est donc créer un vecteur par patient ?
    Il ne faut pas mais c'est plus simple et flexible : on ne gère pas la taille, elle s'adapte toute seule, on peut facilement effacer, ajouter...

    Mais non, on n'en met pas 1 par patient. On met 1 struct par patient, 1 fiche.
    Et on les met toutes dans le vector qui est l'équivalent de la boite à fiche d'un médecin.
     

  10. Bjrn

    Date d'inscription
    décembre 2017
    Messages
    7

    Re : Créer un tableau sur c++

    Daccord je pense comprendre, pensez vous que je sois sur la bonne voie ou pas du tout ?


    code
    Code HTML:
    typedef struct
            {
                string nom;
                string prenom;
                int     age ;
                float   taille, poids ;
                char    sexe ;
                
            } Patient;
        
        Patient patientA, patientB, patientC, patientD, patientE ;
        
        patientA.nom='jean';
        patientA.age=35;
        patientA.taille=1.68;
        patientA.poids=67.8;
        patientA.sexe='F';
        
        cout<<"Son age est : "<<patientA.age<<endl; // affiche l'age du patient A par exemple
        cout<<"Son nom est : "<<patientA.nom<<endl;
        
    
        
        return 0;
        
    }

    J'ai un message d'erreur pour le nom...

    Sinon, si je suis sur la bonne voie, alors je peux continuer à faire la même chose pour les autres patients.
    Je suis preneuse de toutes les pistes, et conseils à prendre. N'hésitez pas merci à vous !
     

  11. Ikhar84

    Date d'inscription
    octobre 2016
    Localisation
    Avignon
    Âge
    40
    Messages
    392

    Re : Créer un tableau sur c++

    Citation Envoyé par Bjrn Voir le message
    Bonjour à tous !

    Je suis exactement dans le même cas que Wass. J'ai un projet à réaliser en langage c++.
    Je n'ai suivis que quelques cours de c++ qui ne m'aident pas à débuter mon programme.

    Je dois commencer par stocker des données de x patients : à savoir le nom, prénom, l'âge, taille, poids, IMC, le taux de certaines hormones...
    Ces données serviront à poser le diagnostique d'une pathologie.

    Questions
    Pour cela, faut-il commencer par "struct" ?
    Autre question, j'ai compris qu'il fallait utiliser "vector" au lieu de "tableau". Il est donc créer un vecteur par patient ?


    Merci d'avance pour vos réponses, je répète que je débute totalement dans ce langage je vous prie donc de m'excuser si mes explications ne sont pas rigoureuses.
    Je ne sais si on peut vous aider dans cette discussion ou s'il vaut mieux que vous creez la votre.

    Mais pour commencer, la structure est vraiment une mauvaise idée, on parle de POO, alors autant utiliser des classes/objets, avec des attributs et méthodes bien conçus..
    Une bonne raison ? Ne serait ce que pour la gestion et l'affichage des données...

    Pourquoi utiliser les vecteurs (et autres listes) ?
    Les tableaux sont une structure en mémoire figée et rigide.
    Cela nécessite de connaître précisement la taille maximale que prendra le tableau dès la conception du programme.
    Il faut être vigilant avec les indices (dépassement par exemple dans un des post ci-dessus, la boucle for va de 0 à 200, soit 201 elements, alors que le tableau est déclaré avec 200...).
    Il est relativement difficile de supprimer un element (déplacement de tous les elements n+1 d'une case inférieure), d'en inserer un (encore une histoire de décalage) ou d'en ajouter un (ou garder en memoire un "pointeur" sur la position actuelle ou parcourir jusqu'au dernier element)...
    Il existe bien sûr des techniques plus "dynamiques" (malloc, realloc par exemple...) mais ces techniques sont gourmandes...

    Les "listes" (vector/list) sont des objets conteneur conçu pour cela, il permette de compter les elements, d'en ajouter, inserer, supprimer (...) de façon dynamique, ou d'acceder directement à l'element choisi... grâce à leur méthodes.
    Vector est donc l'objet qui contient la liste des patients (pourquoi un vector par patient ?!? ).

    Le meilleur des conseils reste quand même de vous plonger dans un minimum de cours en ligne ou livres, de tester quelques lignes de code, si problème il y a, postez les et posez des questions précises.

    Edit: grillé..
    Les chaines de caractéres sont entre guillements doubles "..." d'où l'erreur...
    Les caractères isolés entre guillemets simple: 'a'.
    Dernière modification par Ikhar84 ; 27/12/2017 à 19h15.
    J'ai glissé Chef !
     

  12. pm42

    Date d'inscription
    juillet 2015
    Messages
    4 200

    Re : Créer un tableau sur c++

    Citation Envoyé par Bjrn Voir le message
    J'ai un message d'erreur pour le nom...
    En C/C++ tu mets de " pour les chaines. ' est réservé pour les caractères.

    Sinon, ton code est pas mal sauf qu'en général, on va éviter de faire patientA, patientB... mais utiliser justement un tableau/vecteur mais tu peux voir ça ensuite.
     

  13. pm42

    Date d'inscription
    juillet 2015
    Messages
    4 200

    Re : Créer un tableau sur c++

    Citation Envoyé par Ikhar84 Voir le message
    Mais pour commencer, la structure est vraiment une mauvaise idée, on parle de POO
    Une struct est l'équivalent d'une "case class" en programmation objet. Cela peut être parfaitement adapté et c'est largement plus abordable pour un débutant qu'un objet classique C++ avec getter/setter.
     

  14. Bjrn

    Date d'inscription
    décembre 2017
    Messages
    7

    Re : Créer un tableau sur c++

    Merci pour le nom cela fonctionne

    Maintenant je dois me focaliser sur les vecteurs, je pense que c'est la meilleure chose à faire d'après vos dires.
    Je me suis documentée sur le net. Je dois donc construire un tableau multidimensionnel avec des vecteurs cad des lignes que je définis au fur et à mesure.

    Mais chaque ligne donnera : nom prénom âge taille poids, etc.
    On aurait donc des entiers ET des chaines de caractères dans une même ligne ?? C'est possible ?

    En d'autres termes, je suis bloquée pour déclarer mon tableau de vecteurs : est-il possible de mettre plusieurs types de variables dans une même ligne ? ou suis-je à coté de la plaque ?

    Merci à vous
     

  15. Jack

    Date d'inscription
    avril 2003
    Localisation
    Metz
    Messages
    16 230

    Re : Créer un tableau sur c++

    Pourquoi multidimensionnel? Un vecteur de structures devrait suffire.
     


    • Publicité







Sur le même thème :


    301 Moved Permanently

    301 Moved Permanently


    nginx/1.2.1



 

Discussions similaires

  1. Créer un circuit secouru dans le tableau électrique
    Par flash17 dans le forum Bricolage et décoration
    Réponses: 3
    Dernier message: 04/06/2016, 11h55
  2. Créer une prise de courant depuis le tableau électrique (débutante)
    Par Sunflower1977 dans le forum Bricolage et décoration
    Réponses: 7
    Dernier message: 22/09/2014, 19h44
  3. Alimentation d'un tableau divisionnaire depuis tableau principal
    Par wonderfulif dans le forum Bricolage et décoration
    Réponses: 2
    Dernier message: 19/09/2013, 18h22
  4. Réponses: 3
    Dernier message: 31/07/2010, 09h01
  5. Réponses: 1
    Dernier message: 21/09/2009, 17h26