Aller au menu - Aller au contenu

différence entre 2 ligne

Pour accéder à cette section
Connectez-vous !
connexion_rpx

Résolu Le problème de ce sujet a été résolu

Page 1 
Auteur Message
1 visiteur sur ce sujet (1 Anonyme)
Page 1 
Hors ligne martel05 # Posté le 03/02/2012 à 18:37:35

Bonjour a tous, je viens de commencer la programmation en c++ et je suis tombé sur une situation ou mon programme (premier programme a vie) ne voulait pas faire ce que je lui demandais. Après plusieurs testes et plusieurs heures de recherche j'ai finalement trouver ce que je cherchais et mon programme fait exactement ce que je lui dit.

La seul chose c'est que je ne comprend pas pourquoi.

Au début mon code était et ca ne fonctionnait pas
Code : C++
1
2
3
4
5
6
7
do
    {
        cout << "Hauteur:";
        cin >> hauteur;
        cout << "Largeur:";
        cin >> largeur;
    }while(hauteur || largeur <= 0);


Maintenant il fonctionne
Code : C++
1
2
3
4
5
6
7
do
    {
        cout << "Hauteur:";
        cin >> hauteur;
        cout << "Largeur:";
        cin >> largeur;
    }while((hauteur <= 0) || (largeur <= 0));


Quel est la différence entre les deux ligne while? Ne veulent telles pas dire la même chose ?

Merci d'avance!
Publicité # Posté le 03/02/2012 à 18:37:35

Hors ligne Neki # Posté le 03/02/2012 à 20:26:09
Plug 'n pray

Bonsoir,
Non tes deux lignes ne sont pas équivalentes.
Dans le premier cas, tu testes si (hauteur différent de 0) ou (largeur négatif ou nul).
Ecrire if(hauteur) est équivalent à écrire if(hauteur != 0) (si hauteur est un type numérique).
Édité le 03/02/2012 à 20:26:43 par Neki

Prière de lire en entier tous les messages d'erreur si vous voulez résoudre votre problème.
Voir aussi : http://the-lambda-church.org/articles/hotline/
 
Connecté Mr21 # Posté le 04/02/2012 à 01:02:31

Avatar

Ville : Villers-sur-mer
Pays : France métropolitaine
Études : Epitech Paris

Cette réponse a aidé l'auteur du sujet Cette réponse a aidé l'auteur du sujet
martel05, ah oui en fait tu voulais tester en meme temps hauteur et largeur... nop ca marche pas comme ca.

Si par exemple tu veux tester si trois variable ont la meme valeur tu ne pourra pas non plus faire:

if (a == b == c == 3)

tu devras faire un truc un peu moche du genre:

if (a == 3 && b == 3 && c == 3)
 

Retour au forum "Langage C++" ou à la liste des forums

Pour accéder à cette section
Connectez-vous !
connexion_rpx