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++/CLI Discussion :

simple test if dans boucle qui ne réagit pas comme escompté


Sujet :

C++/CLI

  1. #1
    Candidat au Club
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Février 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2016
    Messages : 7
    Points : 4
    Points
    4
    Par défaut simple test if dans boucle qui ne réagit pas comme escompté
    Bonjour à toutes et à tous, je reprends le C++, dans la théorie tout est bon mais lorsque j'ai tenté d'implémenté j'ai quelques surprise,

    la simple boucle suivante devrait incrémenté i et le test if devrait indiquer 3 lorsque i atteins 3 (donc une fois) au lieu de ça le test fonctionne mais i est incrémenté après a 4 et le if valide toujours à 3 et cela boucle à l'infini. (voire copié/collé sous le listing)

    J'avoue je débute aussi j'ai peut être mal interprété certaines chose (notamment les tabulations ou autre), si quelqu'un pouvait m'indiquer mon erreur ce serait sympa, j'utilise visual studio
    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
     
     // ConsoleApplication1.cpp*: définit le point d'entrée pour l'application console.
    //
     
    #include "stdafx.h"
    #include "iostream"
     
    int main()
    {
    	using std::cout;
    	using std::endl;
            int i = 0;
     
    	for (i = 0; i < 10; i++)
    	{
    	cout << "i:" << i << endl;
     
    		if (i = 3)
    		{
    		cout << "i egal a 3 :" << i << endl;
    		}
     
    	}
    	cout << "fin de boucle" << endl;
     
     
     
    	return 0;
    }
    résultat :

    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i egal a 3 :3
    i:4
    i ega

  2. #2
    Candidat au Club
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Février 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2016
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    j'ai rien compris j'ai refait la boucle et ça fonctionne...

    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
    // ConsoleApplication1.cpp*: définit le point d'entrée pour l'application console.
    //
     
    #include "stdafx.h"
    #include "iostream"
     
    int main()
    {
    	using std::cout;
    	using std::endl;
    	int i = 0;
     
     
    	//while(i < 10)
    	for (i=0;i<15;i++)
    	{
    	cout << "i:" << i << endl;
     
    		if (i < 3)
    		{
    		cout << "i inférieur a 3 :" << i;
    		}
     
    	}
    	cout << "fin de boucle" << endl;
     
    	return 0;
    }

  3. #3
    Expert éminent
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2015
    Messages
    1 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 1 586
    Points : 7 724
    Points
    7 724
    Par défaut
    Bonjour,

    Il y a une différence importante entre les deux codes :
    i < 3 vérifie si i est strictement inférieur à 3.
    i = 3 affecte la valeur 3 à i, et est vrai.

  4. #4
    Candidat au Club
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Février 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2016
    Messages : 7
    Points : 4
    Points
    4
    Par défaut
    Merci dafab j'ai compris il faut écrire if (i==3) !

    super merci infiniment de ton aide je tournais chèvre ; ))))))))))

    bonne journée,

    f.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Tests conditionnel dans formulaire qui ne fonctionnent pas !
    Par jlp13012 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 17/08/2015, 18h07
  2. Réponses: 4
    Dernier message: 06/05/2015, 17h53
  3. [XL-2013] Condition dans un IF THEN qui ne réagit pas comme d'habitude.
    Par jbellavance dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 20/03/2015, 00h43
  4. Range.Offset(1) dans une boucle qui ne fonctionne pas
    Par Pierre.g dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/08/2008, 12h58
  5. Réponses: 10
    Dernier message: 07/01/2007, 13h03

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