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

Obli -  
Doctor C Messages postés 648 Statut Membre -
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 648 Statut Membre 399
 
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 648 Statut Membre 399
 
Pas de problème!
0