Nombre a virgules en c++

Fermé
jimcool2 Messages postés 2 Date d'inscription dimanche 27 octobre 2013 Statut Membre Dernière intervention 10 novembre 2013 - 27 oct. 2013 à 23:59
jimcool2 Messages postés 2 Date d'inscription dimanche 27 octobre 2013 Statut Membre Dernière intervention 10 novembre 2013 - 10 nov. 2013 à 18:19
Bonjour,
je me suis fait une petite calculatrice bien simple, mais lorsque je met des nombres a virgules dans une addition par exemple, ma liste ne fait que defiler rapidement et plus rien ne marche.
svp aidez moi!!!! merci :)





voila mon programme :

#include <iostream>
#include <cstdlib>
#include <cmath>
#include <math.h>

using namespace std;
int main()
{
signed long int num1, num2, num3;
signed long int ans;
cout <<"Bienvenue sur la calculatrice C++!" << endl;
cout << endl;
while (true) {
cout << endl;
cout << endl;
cout <<"Choisissez-vous un chiffre et appuyer sur entrer <1-5>: ";
cout << endl;
cout <<"1. Addition" << endl;
cout <<"2. Soustraction" << endl;
cout <<"3. Multiplication" << endl;
cout <<"4. Division" << endl;
cout <<"5. Racine carree" << endl;
cout <<"6. Puissance" << endl;
cout <<"7. Sortie" << endl;
cout << endl;

cin >> ans;

if (ans == 1)
{
cout << endl;
cout <<"(Addition) " << endl;
cout <<"Entrez le premier numero (nombre entier seulement): " ;
cin >> num1;
cout <<"Entrez le deuxieme numero (nombre entier seulement): " ;
cin >> num2;
cout <<"La reponse est: " << num1 + num2 << endl;
cout <<"Si vous voulez ajouter un numero, entrez-le maintenant, sinon, faites le 0: " ;
cin >> num3;
cout << endl;
cout <<"La reponse est: " << num1 + num2 + num3 << endl;
}

if (ans == 2)
{
cout << endl;
cout <<"(Soustraction) " << endl;
cout <<"Entrez le premier numero (nombre entier seulement): " ;
cin >> num1;
cout <<"Entrez le deuxieme numero (nombre entier seulement): " ;
cin >> num2;
cout <<"La reponse est: " << num1 - num2 << endl;
cout <<"Si vous voulez ajouter un numero, entrez-le maintenant, sinon, faites le 0: " ;
cin >> num3;
cout << endl;
cout <<"La reponse est: " << num1 - num2 - num3<< endl;
}

if (ans == 3)
{
cout << endl;
cout << "(Multiplication)" << endl;
cout <<"Entrez le premier numero (nombre entier seulement): " ;
cin >> num1;
cout <<"Entrez le deuxieme numero (nombre entier seulement): " ;
cin >> num2;
cout <<"La reponse est: " << num1 * num2 << endl;
cout <<"Si vous voulez ajouter un numero, entrez-le maintenant, sinon, faites le 0: " ;
cin >> num3;
cout << endl;
cout <<"The answer is: " << num1 * num2 * num3<< endl;
}

if (ans == 4)
{
cout << endl;
cout <<"(Division)" << endl;
cout <<"Entrez le premier numero (nombre entier seulement): " ;
cin >> num1;
cout <<"Entrez le deuxieme numero (nombre entier seulement): " ;
cin >> num2;
if (num2 == 0)
{
cout <<"Erreur 2" << endl;
cout <<"Vous ne pouvez diviser par 0, imbecile!" << endl;
}
cout <<"La reponse est: " << num1 / num2 << endl;
cout <<"Si vous voulez ajouter un numero, entrez-le maintenant, sinon, faites le 0: " ;
cin >> num3;
if (num3 == 0)
{
cout <<"La reponse est: " << num1 / num2 << endl;
}
cout << endl;
cout <<"La reponse est: " << num1 / num2 / num3 << endl;
}

if (ans == 5)
{
cout << endl;
cout <<"(Racine Carree)" << endl;
cout <<" Entrez le numero (nombre entier seulement): " << endl;
int n;
cin >> n;
cout <<"La racine carree de ce nombre est: " << sqrt(n);
}

if (ans == 6)
{
cout << endl;
cout <<" (Puissance)" << endl;
cout <<"Entrez le numero (nombre entier seulement): " << endl;
cin >> num1;
cout <<"Entrez la puissance (max 5) (nombre entier seulement): " << endl;
cin >> num2;
if (num2 == 1)
{
cout <<"La reponse est: " << num1 << endl;
}
if (num2 == 2)
{
cout <<"La reponse est: " << num1 * num1 << endl;
}
if (num2 == 3)
{
cout <<"La reponse est: " << num1 * num1 * num1 << endl;
}
if (num2 == 4)
{
cout <<"La reponse est: " << num1 * num1 * num1 * num1 << endl;
}
if (num2 == 5)
{
cout <<"La reponse est: " << num1 * num1 * num1 * num1 * num1 << endl;
}

}
if (ans == 7)
{
cout << endl;
cout << endl;
cout <<"Merci!";
exit (1);
}
}





}



1 réponse

Il est normal que cela te pose problème vu que tes variables sont déclarées en tant qu'entier. A la place de "int", met un "float" ;)
1
jimcool2 Messages postés 2 Date d'inscription dimanche 27 octobre 2013 Statut Membre Dernière intervention 10 novembre 2013
10 nov. 2013 à 18:19
merci!! :D
0