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 :

Résolution d'un Exercice trouver sur le net (Problème dans l'écriture).


Sujet :

C++

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut Résolution d'un Exercice trouver sur le net (Problème dans l'écriture).
    Bonjour à tous, comment allez-vous ?

    J'ai trouvé un Exercice sur internet que j'ai voulu résoudre mais je crois mettre un peu en mêler les pinceaux, je sollicite donc votre
    connaissance afin de m'aider à résoudre le souci dans le code..

    Voici l'exercice :

    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
     
     
    /* Exercice 4 :
       Écrire un programme qui demande à l'utilisateur de saisir 10 entiers stockés dans un Tableau
       ainsi qu'un entier V. Le programme doit rechercher si "V" ce trouve dans le Tableau
       et doit supprimer la 1er occurrence de "V" en décalent d'une case vers la gauche les éléments
       suivants et en rajoutant un 0 à la fin du Tableau. Le programme doit ensuite afficher le
       Tableau Final!
    */
     
     
    #include <iostream>
     
    using namespace std;
     
    int main()
    {
        int Entier[10];
        int i, Trouve = 0;
     
        cout <<"Bienvenu(e) dans notre programmer Exercice 4 " <<endl;
        cout <<"Veuillez entrez des valeurs dans le Tableau de 0 à ...." <<endl;
     
        cout <<endl;
     
        //Demande à l'utilisateur d'entrer des valeurs dans le Tableau de 0 à ....
        for(i = 0; i < 10; i++)
        {
            cout <<"Entrez la valeur N° " << i + 1 << " : ";
            cin >> Entier[i];
        }
     
        cout <<endl;
     
        cout <<"Veuillez entrer une valeur ""V"" : ";
        cin >> Trouve;
     
     
        //Décalage de l’occurrence vers la gauche et recherche du Nombre Trouve (Le nombre "V")
     
        for (i = 1; i < 10; i++)
        {
            cout <<"Affichage du Tableau avec décalage à gauche des éléments : " << Entier[i + 1] <<endl;
     
            //Affiche Zéro à a la fin du Tableau (Ne m'affiche pas ce que je veux ...
            if (i == 10)
            {
                for (i = 0; i < 10; i++)
                {
                    Entier[10] = 0;
     
     
                }
                cout <<" Tableau de fin égale (0) : " << Entier[10] <<endl;
            }
     
            if (Entier[i] == Trouve)
            {
                Entier[i] = i-1 ;
                cout <<"Décalage vers la gauche de L’occurrence : " << Entier[i] <<endl;
     
     
            }
        }
     
    return 0;
    }
    ça fait des heures que je suis dessus et je n'arrive pas à le résoudre, je ne sait pas non plus si j'ai bien compris l'exercice
    en tous cas j'ai fait de mon mieux, mais étant bloquer je sollicite votre aide.. Je vous remercie d'avance et vous
    souhaite un excellent après-midi.

    Bien à vous.

    Aigle-Royal

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    for (i = 1; i < 10; i++) pourquoi tu vérifies pas que le premier élément soit celui recherché ?
    if (i == 10) aucune chance que ce soit utile vu que le for sort avant que i vaille 10..
    Entier[i] = i-1 ; tu crois faire quoi là ? Tu es sencé décaller des éléments, pas assigner i-1 à l'élément i.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut Réponse à Bousk
    Merci pour ton retour.

    Rire... Pour être honnête je croyais que je décalais les éléments ... (petit rappel je suis débutant lol ) ...
    Bon visiblement je n'ai pas compris comment le coder ... ni très bien compris la manipulation des éléments...
    Je vais continuer à chercher lol...

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 630
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 630
    Points : 10 556
    Points
    10 556
    Par défaut
    Ce n'est pas du C++ mais du C : tu ne vas pas nous dire que remplacer un booléen de type unsigned char par bool c'est suffisant pour justifier

    Recherche un entier dans un tableau C (niveau 0) : (compilation >=C99 ou C++)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        size_t value_index = INT_MAX; // #include <climits> (limits.h)
     
        for(size_t elt=0; ((value_index == INT_MAX) && (elt < TAB_NB_ELTS)); ++elt) {
            if (tab[elt] == value) {
                value_index = elt;
            }
        }
    Décalage des éléments vers la gauche dans un tableau C (niveau 0) : (compilation >=C99 ou C++)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        if (value_index  != INT_MAX) { // found value in tab
            for(size_t elt=(value_index + 1); elt < TAB_NB_ELTS; ++elt) {
                tab[elt - 1] = tab[elt];
            }
     
            tab[TAB_NB_ELTS - 1] = 0; // last element
        }

    Édit : @Bousk, le VDD (voisin du dessous) propose une solution 1-2 lignes en pur C

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Pour décaler des éléments, autant utiliser memmove
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut Foetus
    Citation Envoyé par foetus Voir le message
    Ce n'est pas du C++ mais du C : tu ne vas pas nous dire que remplacer un booléen de type unsigned char par bool c'est suffisant pour justifier

    Recherche un entier dans un tableau C (niveau 0) : (compilation >=C99 ou C++)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        size_t value_index = INT_MAX; // #include <climits> (limits.h)
     
        for(size_t elt=0; ((value_index == INT_MAX) && (elt < TAB_NB_ELTS)); ++elt) {
            if (tab[elt] == value) {
                value_index = elt;
            }
        }
    Décalage des éléments vers la gauche dans un tableau C (niveau 0) : (compilation >=C99 ou C++)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
        if (value_index  != INT_MAX) { // found value in tab
            for(size_t elt=(value_index + 1); elt < TAB_NB_ELTS; ++elt) {
                tab[elt - 1] = tab[elt];
            }
     
            tab[TAB_NB_ELTS - 1] = 0; // last element
        }

    Édit : @Bousk, le VDD (voisin du dessous) propose une solution 1-2 lignes en pur C
    Bon ben il va falloir dire cela à mon bouquin que c'est du "c" car mon livre s'intitule programmer en langage C++ 9ième édition de Claude delannoy ...

    Pour ce qui est de l'exercice je l'ait trouvé sur internet en faisant une recherche exercice c++ ..

    Donc à contester avec le constructeur du site lol (Je n'y suis pour rien ;-) ) voir lien du site intitulé Programmation C++/Les tableaux/Exercices sur les tableaux statiques => https://fr.wikibooks.org/wiki/Progra...ues#Exercice_1

    Et personnellement je comprends rien à ton code je n'ai pas encore vu certaine chose comme ton size_t par exemple... je ne suis qu'aux bases .. (Tableau, Variable, Fonction, Conditions, Boucle, Et pointeurs)... tout les autres fonctions je ne l'ait pas encore vu donc ici size_t je suppose que c'est en rapport avec une taille selon la traduction du nom mais j'ignore ce qu'il fait...

    Bonne soirée à toi merci d'essayer de m'expliquer j'irai voir sur le site demain à tête reposé le size_t ....

    Aigle-Royal.

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut Réponse à Bousk
    Citation Envoyé par Bousk Voir le message
    Pour décaler des éléments, autant utiliser memmove
    Euh je ne connait pas "memmove" pas encore vu cette instruction ou pré fonction ...

  8. #8
    Expert éminent sénior
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 630
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 630
    Points : 10 556
    Points
    10 556
    Par défaut
    Citation Envoyé par Aigle-Royal Voir le message
    Pour ce qui est de l'exercice je l'ait trouvé sur internet en faisant une recherche exercice c++ ..

    Donc à contester avec le constructeur du site lol (Je n'y suis pour rien ;-) ) voir lien du site intitulé Programmation C++/Les tableaux/Exercices sur les tableaux statiques
    Parce qu'il a 2 façons d'enseigner le C++
    • Enseigner le C et la programmation procédurale. Ensuite enseigner le C++ et la programmation objet. Après approfondir le C++ avec la méta programmation. Enfin enseigner le C++ moderne (C++11, C++14, C++17, ...) et la programmation fonctionnelle.
    • Depuis 2011, enseigner directement le C++ moderne (C++11, C++14, C++17, ...)


    Toi tu es dans la première voie parce que ton livre a été écrit la première fois en 1996, donc avant les normes C99 et C++98/ C++03
    Et donc actuellement tu apprends le C (la première partie) CQFD : c'est du procédural, c'est du C.
    Et le site c'est la même chose


    Citation Envoyé par Aigle-Royal Voir le message
    size_t par exemple... je ne suis qu'aux bases
    C'est la base c'est un type de base introduit avec le C99/ C++98 (donc en 1998-99) mais que les gens n'enseignent pas parce qu'ils enseignent le C, mais celui avant la norme C99
    Tout cela parce que Microsoft et Visual C++ n'ont jamais été compatible 100% C99.

    Et le type size_t correspond au type unsigned int et est utilisé dans la librairie standard C (par exemple strlen, lien cplusplus.com en anglais) et dans la librairie standard C++ (par exemple std::string::size, lien cplusplus.com en anglais)
    Tu l'as forcément rencontré ... je serais taquin je dirais que tu es de mauvaise foi


    Citation Envoyé par Aigle-Royal Voir le message
    Euh je ne connait pas "memmove" pas encore vu cette instruction ou pré fonction ...
    C'est normal : ton livre ne t'apprend pas la librairie standard mais que très partiellement
    C'est à toi d'aller éplucher les sites référence comme cplusplus.com

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

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 614
    Points : 30 626
    Points
    30 626
    Par défaut
    Salut,
    Citation Envoyé par Aigle-Royal Voir le message
    Bon ben il va falloir dire cela à mon bouquin que c'est du "c" car mon livre s'intitule programmer en langage C++ 9ième édition de Claude delannoy ...
    Ouchhh!!!

    Evidemment, tu ne pouvais pas le savoir, mais les bouquin de delannoy n'ont vraiment pas bonne presse, que ce soit auprès intervenants sur ce forum, ou même de manière plus internationnale

    Voici une ==>des discussions que l'on a eues sur le sujet<==
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  10. #10
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut Réponse à Foetus.
    Citation Envoyé par foetus Voir le message
    Parce qu'il a 2 façons d'enseigner le C++
    • Enseigner le C et la programmation procédurale. Ensuite enseigner le C++ et la programmation objet. Après approfondir le C++ avec la méta programmation. Enfin enseigner le C++ moderne (C++11, C++14, C++17, ...) et la programmation fonctionnelle.
    • Depuis 2011, enseigner directement le C++ moderne (C++11, C++14, C++17, ...)
    C'est pourtant bien les norme moderne de C++11,C++14,C++17 que mon livre traite ... édition 2017...

    Toi tu es dans la première voie parce que ton livre a été écrit la première fois en 1996, donc avant les normes C99 et C++98/ C++03
    Et donc actuellement tu apprends le C (la première partie) CQFD : c'est du procédural, c'est du C.
    Et le site c'est la même chose



    C'est la base c'est un type de base introduit avec le C99/ C++98 (donc en 1998-99) mais que les gens n'enseignent pas parce qu'ils enseignent le C, mais celui avant la norme C99
    Tout cela parce que Microsoft et Visual C++ n'ont jamais été compatible 100% C99.

    Et le type size_t correspond au type unsigned int et est utilisé dans la librairie standard C (par exemple strlen, lien cplusplus.com en anglais) et dans la librairie standard C++ (par exemple std::string::size, lien cplusplus.com en anglais)
    Tu l'as forcément rencontré ... je serais taquin je dirais que tu es de mauvaise foi
    Je ne suis pas de mauvaise foi rassure toi ;-) Et je ne l'ai pas encore rencontré non...
    Et petite précision j'ai investi dans ce livre car il est en français ne lisant pas l'anglais actuellement...


    C'est normal : ton livre ne t'apprend pas la librairie standard mais que très partiellement
    C'est à toi d'aller éplucher les sites référence comme cplusplus.com
    Merci à toi pour c'est précision.

    Aigle-Royal

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut Reponse à Koala
    Citation Envoyé par koala01 Voir le message
    Salut,

    Ouchhh!!!

    Evidemment, tu ne pouvais pas le savoir, mais les bouquin de delannoy n'ont vraiment pas bonne presse, que ce soit auprès intervenants sur ce forum, ou même de manière plus internationnale

    Voici une ==>des discussions que l'on a eues sur le sujet<==
    Bonjour Koala. En effet je ne savais pas... et je ne savais pas non plus que ce bouquin n'avais pas bonne presse je l'ai acheté après avoir acheté un autre livre qui était obsolète et donc pour être à jour j'ai acheté sa toute nouvelle version de Claude delannoy... étant donne que je ne lit pas l'anglais j'ai du investir dans un livre en Français...

    Merci pour ton retour.

    Aigle-Royal.

  12. #12
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut Hum...
    ça fait déjà le troisième livre que j'achète en c++ , J'ai acheté mon premier livre intitulé : Le langage C++ de Pearson "Le programmeur".
    Le deuxième livre celui de Claude delannoy et le troisième livre un livre de poche appeler : Tout sur le c++ De comment ça marche édition DUNOD mais que je n'apprécie pas car c'est un livre de poche donc pour apprendre je ne trouve pas cela vraiment intéressant ...

    Aigle-Royal

  13. #13
    Membre éclairé

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

    Informations forums :
    Inscription : Décembre 2013
    Messages : 393
    Points : 685
    Points
    685
    Par défaut
    Citation Envoyé par Aigle-Royal Voir le message
    C'est pourtant bien les norme moderne de C++11,C++14,C++17 que mon livre traite ... édition 2017...
    Tu t'es fait avoir par leur marketing. Les editeurs savent qu'une edition recente se vendra mieux parce que les gens vont penser qu'elle est a jour. Donc on fait 2-3 modifications, ajoute un chapitre. Le fond ne change pas, mais on peut mettre sur la couverture "c'est a jour !"

    C'est une erreur classique de croire que l'on programme comme il y a 20 ans, avec juste quelques connaissances en plus. Ce qui est completement faux, les methodes de travail, les approches pour resoudre un probleme, les outils, les ordis, tout a change depuis 20 ans.

  14. #14
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut Réponse à mintho carmo
    Citation Envoyé par mintho carmo Voir le message
    Tu t'es fait avoir par leur marketing. Les editeurs savent qu'une edition recente se vendra mieux parce que les gens vont penser qu'elle est a jour. Donc on fait 2-3 modifications, ajoute un chapitre. Le fond ne change pas, mais on peut mettre sur la couverture "c'est a jour !"

    C'est une erreur classique de croire que l'on programme comme il y a 20 ans, avec juste quelques connaissances en plus. Ce qui est completement faux, les methodes de travail, les approches pour resoudre un probleme, les outils, les ordis, tout a change depuis 20 ans.
    Bonsoir mintho carmo... je n'étais juste pas au courant de cela .... Par contre je suppose que la logique de programmation reste la même sauf la syntaxe qui change ...


    Aigle-Royal

  15. #15
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut Est-ce que quelqu'un peut me dire si mon compilateur débloque...
    Bonsoir est-ce que quelqu'un peut me dire pourquoi j'ai ce genre de valeur dans ce code , merci.

    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    /* Exercice 4 :
       Ecrire un programme qui demande à l'utilisateur de saisir 10 entiers stockés dans un Tableau
       ainsi qu'un entier V. Le programme doit rechercher si "V" ce trouve dans le Tableau
       et doit supprimer la 1er occurence de "V" en décalent d'une case vers la gauche les éléments
       suivants et en rajoutant un 0 à la fin du Tableau. Le programme doit ensuite afficher le
       Tableau Final!
    */
     
     
    #include <iostream>
     
    using namespace std;
     
    int main()
    {
        int Entier[5];
        int i, Trouve = 0, Tmp1,Tmp2;
     
        cout <<"Bienvenu(e) dans notre programmer Exercice 4 " <<endl;
        cout <<"Veuillez entrez des valeurs dans le Tableau de 0 à ...." <<endl;
     
        cout <<endl;
     
        //Demande à l'utilisateur d'entrer des valeurs dans le Tableau de 0 à ....
        for(i = 0; i < 5; i++)
        {
            cout <<"Entrez la valeur N° " << i + 1 << " : ";
            cin >> Entier[i];
        }
     
        cout <<endl;
     
        //cout <<"Veuillez entrer une valeur ""V"" : ";
        //cin >> Trouve;
     
        //Cherche le nombre "V" Si il ce trouve dans le Tableau et fait un Décalage de son occurence vers la gauche.
        for (i = 0; i < 5; i++)
        {
     
           // if (Entier[i] == Trouve)
           // {
     
     
           // }
            cout <<"entier i : " << Entier[i] <<endl;
            Entier[i] = Entier[i + 1];
            cout <<"entier i + 1 : " << Entier[i] <<endl;
     
        }
     
        return 0;
    }

    Nom : Screenshot_20200125_214502.png
Affichages : 163
Taille : 173,8 Ko

    Selon ma logique il devrait plutôt me faire ceci non ?

    Entier i : 1
    Entier i + 1 : 2
    Entier i : 2
    Entier i + 1 : 3
    Entier i : 3
    Entier i + 1 : 4
    Entier i :5
    Entier i + 1 : 6
    Entier i : 6
    Entier i + 1 : 7

    Alors pourquoi il me donne un résultat totalement différente de que je pense ? J'ai le sentiment que mon compilateur à un problème c'est vrais ou c'est moi qui ne comprends pas ??

    Je vous remercie d'avance pour vos réponses.

    Ps : Je décortique le code de mon Exercice pour essayer de comprendre comment faire c'est pour cela que j'ai fais ce code..

    Aigle-Royal

  16. #16
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Aigle-Royal Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    int Entier[5];
    // ...
    for (i = 0; i < 5; i++)
    {
        // ...
        Entier[i] = Entier[i + 1];
    }
    Quelles sont les différentes valeurs que prend i dans cette boucle ?
    Quel sont les indices i que tu peux utiliser dans l'expression Entier[i] ?
    Et dans l'expression Entier[i + 1] ?

  17. #17
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    int Entier[5];
    // ...
    for (i = 0; i < 5; i++)
    {
        // ...
        Entier[i] = Entier[i + 1];
    }
    Quelles sont les différentes valeurs que prend i dans cette boucle ?
    Bah les différente valeur de i sont 0 1 2 3 4

    Quel sont les indices i que tu peux utiliser dans l'expression Entier[i] ?
    Et dans l'expression Entier[i + 1] ?
    Les indices i c'est 0 à 4
    Et dans l'expression Entier[i + 1] c'est 1 à 5 ?
    c'est ça ?

  18. #18
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Aigle-Royal Voir le message
    Et dans l'expression Entier[i + 1] c'est 1 à 5 ?
    C'était pas exactement le sens de ma question, mais partons de là.
    Lors du parcours de cette boucle, i + 1 va donc prendre les valeurs 1 à 5 (inclus).

    Rappelle-nous les indices limites du tableau int Entier[5]; ?

    Conclusion ?

  19. #19
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par Winjerome Voir le message
    C'était pas exactement le sens de ma question, mais partons de là.
    Lors du parcours de cette boucle, i + 1 va donc prendre les valeurs 1 à 5 (inclus).

    Rappelle-nous les indices limites du tableau int Entier[5]; ?

    Conclusion ?
    La limite est de 0 à 4 donc je fait un dépassement de cases mémoire ...
    D’où mes réponses erroné que je ne comprenait pas...

  20. #20
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2017
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2017
    Messages : 67
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par Winjerome Voir le message
    C'était pas exactement le sens de ma question, mais partons de là.
    Lors du parcours de cette boucle, i + 1 va donc prendre les valeurs 1 à 5 (inclus).

    Rappelle-nous les indices limites du tableau int Entier[5]; ?

    Conclusion ?
    Ok j'ai compris, avec une feuille et avec tes explications j'ai trouvé mon erreur de compréhension.
    En faite moi je pensais qu'on additionnait non pas les indices mais les valeurs à l'intérieur du Tableau.

    Donc avec tes explication j'ai vu qu'il fallait additionner les indices et que j'ai une dépassement de mémoire à la dernière case
    car je fais indice 5 alors que j'en ait 4 vu qu'on commence par l'indice 0.
    Donc avec une feuille cela ma donner le bon résultat comme su mon écran donc :

    Conclusion compilateur opérationnel lol.

    Merci Beaucoup Jérome.

    Bonne soirée à toi.

    Aigle-Royal.

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. VB6 sur Windows 10 : problème dans une picturebox
    Par L'AMI Yves dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 13/12/2016, 07h40
  2. Félicitation sur le site+Problème dans l'ouverture d'une recherche
    Par meryDev dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 2
    Dernier message: 21/06/2009, 14h23
  3. [moteur de recherche] trouver une image sur le net
    Par 123quatre dans le forum Internet
    Réponses: 1
    Dernier message: 05/07/2007, 22h56
  4. avis sur la résolution de plusieurs exercices
    Par celeb2611 dans le forum Langage
    Réponses: 5
    Dernier message: 14/08/2006, 17h12
  5. Où trouver MS-DOS sur le net ?
    Par marcde92 dans le forum Autres Logiciels
    Réponses: 8
    Dernier message: 11/07/2006, 07h24

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