- Pas besoin de stdlib, c'est du C, pas du C++.
- Évite les "using namespace", voir:
[ Lien ]
- Pourquoi mettre NULL dans un char ?
- On peut directement demander les 3 valeurs d'un seul coup
- Il faut gérer la division par 0
- Que fait-on si on ne trouve pas l'opérateur ?
- Mieux vaut faire un switch que plein de if à la suite, lorsque c'est possible.
Voici une version corrigé de ce que tu as fait, mais elle est encore améliorable (n'est pas gérer, les soucis d'entrée incorrect, comme "a + 6"):
Code C/C++ :
#include <iostream>
int main()
{
int nb1;
int nb2;
char signe;
int res;
std::cout << "Entrez les deux nombres et le signe en notation mathematique: " << std::endl;
std::cin >> nb1 >> signe >> nb2;
switch (signe)
{
case '+':
res = nb1 + nb2;
break;
case '-':
res = nb1 - nb2;
break;
case '*':
res = nb1 * nb2;
break;
case '/':
if (nb2 == 0)
{
std::cerr << "Division par 0 impossible" << std::endl;
return 1;
}
res = nb1 / nb2;
break;
default:
std::cerr << "Operande inconnue: " << signe << std::endl;
return 2;
}
std::cout << "Le resultat est: " << res << std::endl;
//system("PAUSE");
return 0;
}
________________________________________________________________________
Historique de mes créations, et quelques articles:
http://0217021.free.fr/portfolio
Merci d'utiliser Réponse acceptée si un post répond à votre question