Exercice débutant instruction if

Résolu
InstaDD -  
 InstaDD -
Bonjour,

J'ai dans mon début d'apprentissage un exercice donc voici l'intitulé

Écrivez une instruction if qui teste deux variables entières et qui affecte la valeur la
plus faible à la variable la plus élevée. N'utilisez qu'une seule clause else.

J'ai écris les quelques lignes suivantes :

#include <iostream>
using namespace std;
int main()
{
 int a, b;
 cout<<"Entrez deux nombre.\n";
 cout<<"a : ";
 cin>> a;
 cout<<"b : ";
 cin>> b;
 
  { if (a<b)
   a=b;
   cout<< "a = "<<a<<"b = " <<b<<endl;
   
    else
    
   b=a;
   cout<< "b = "<<b<<"a = " <<a<<endl;
  }
  return 0;
}



mais au moment de la compilation il communique ce message (exo4.1.cpp:16:5: error: 'else' without a previous 'if'),
je ne comprends pas car pour moi le if est présent et je ne vois pas pourkoi ça bug, merci par avance pour l'aide que vous pourrez m'apporter.



EDIT: Ajout de la coloration syntaxique.

2 réponses

Utilisateur anonyme
 
Bonsoir, sais tu à quoi servent les accolades?
1
phenetas Messages postés 1108 Date d'inscription   Statut Membre Dernière intervention   227
 
+1, la est la source de tes ennuis
0
VanDog Messages postés 63 Date d'inscription   Statut Membre Dernière intervention   13
 
+1, surveille bien l'ordre de celles-ci.
0
InstaDD
 
oui je sais a quoi corresponde les accollades, j'en ai mis deux "encadrant" le main et deux "encadrant" l'instruction if, le soucis ne me vient pas !
0
Utilisateur anonyme > InstaDD
 
Comme le dit VanDog, fais attention à l'ordre.
Quand tu dis en avoir mis qui encadrent le main, elles sont après la déclaration de celui-ci, car elles délimitent le bloc d'instructions à exécuter par la méthode main.


--
0
InstaDD
 
Merci, pour votre aide (réponse !! ^^) j'ai corrigé mon code de la façon suivante pour répondre au mieux à l'énoncé de l'exercice :

#include <iostream>
using namespace std;
int main()
{
 int a, b;
 cout<<"Entrez deux nombre.\n";
 cout<<"a : ";
 cin>> a;
 cout<<"b : ";
 cin>> b;
 
  if (a<b) {
   a=b;
   cout<< "a = b = "<<a<<endl;
  } 
    else {
    
   b=a;
   cout<< "b = a = "<<b<<endl;
  }
  return 0;
}


Je vous remercie encore de votre aide, et je vous dis à bientôt, car je sens que la route va être très long, pour un apprentissage express en solitaire !
0
Utilisateur anonyme
 
Pense à la coloration syntaxique quand tu postes un code, voir l'Edit de ton premier message.
Si ton problème est résolu, merci de cliquer sur le lien "Marquer comme résolu" sous le titre de la discussion
0
InstaDD
 
Ok merci je le ferai a l'avenir
0