Un peu d'aide pour un débutant en c++

Obli -  
Doctor C Messages postés 630 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, bonsoir à tous,

J'aurais besoin de votre expérience afin de m'aider a résoudre un problème en c++ que je dois résoudre malheureusement le programme ne réagit pas comme je le le voudrais !

Voilà mon énoncer :

On suppose que l'utilisateur entre une suite d'entiers positifs, terminée par la valeur sentinelle - 1.

Le programme doit afficher uniquement le dernier nombre (hormis le -1) entré par
l'utilisateur.

Et voici ma solution :

#include <iostream>

using namespace std;

int main() {

cout << "Veuillez entrer des nombres en terminant le programme par -1 " << endl;

int nombre = 0 , nouveaunombre = 0 ;
while (nombre != -1)
{

cout << "entrer votre nombre" << endl ;
cin >> nombre;

nouveaunombre = nombre ;
}
cout << " Le dernier nombre utilisé est : " << nombre << endl ;
return 0;
}

Je voudrais qu'il affiche le dernier chiffre rentré n'étant pas -1, j'ai pensé à un if, auriez-vous des solutions ?

Je vous remercie d'avance ;) !

4 réponses

Obli
 
Le voila en un peu plus clair

#include <iostream>

using namespace std;

int main() {

cout << "Veuillez entrer des nombres en terminant le programme par -1 " << endl;

int nombre = 0 , nouveaunombre = 0 ;
while (nombre != -1)
{

cout << "entrer votre nombre" << endl ;
cin >> nombre;

nouveaunombre = nombre ;
}
cout << " Le dernier nombre utilisé est : " << nombre << endl ;
return 0;
}
0
Obli
 
Personne ne sait m'aider ? :)
0
Doctor C Messages postés 630 Date d'inscription   Statut Membre Dernière intervention   400
 
Bien le bonjour,

Tu étais très bien parti, la seule chose qui te manquait était une condition afin d'ignorer le nombre "-1". J'ai aussi renommé les variables afin qu'elles soient un peu plus explicites:
***************************

int main() {

cout << "Veuillez entrer des nombres en terminant le programme par -1 " << endl;

int nombreEntree = 0, dernierNombre = 0 ;
while (nombreEntree != -1)
{
cout << "entrer votre nombre" << endl ;
cin >> nombreEntree ;

if (nombreEntree != -1) dernierNombre = nombreEntree ;
}
cout << " Le dernier nombre utilisé est : " << dernierNombre << endl ;
return 0;

}
***************************
Je ne peux pas exécuter le code de mon poste présentement alors je ne sais pas si j'ai fait une erreur de syntaxe.

Bonne chance!


Echo "Lima Mike Alfa";
0
Obli
 
Merci beaucoup pour cette solution, je vais la tester directement ;) !.
0
Obli
 
Et ça fonctionne perfect merci !
0
Doctor C Messages postés 630 Date d'inscription   Statut Membre Dernière intervention   400
 
Pas de problème!
0