Résolveur d'équations du second degré (compilé avec g++ sous linux)

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 868 fois - Téléchargée 36 fois

Contenu du snippet

Bon, c'est pas bien compliqué, le programme calcul les équations du second degré. Mais l'interêt est qu'il compilé avec g++ sous linux et qu'il montre bien comment utiliser les classes en C++. Voilà, c'est tout.

Source / Exemple :


#include<iostream.h>
#include<math.h>
#include<stdlib.h>
#include<stdio.h>

class second
{
        public:
        void calculer( int a,  int b, int c);
};

void second::calculer( int a,int b, int c)
{
int delta = b*b-4*a*c;
cout << endl << "Delta = " << delta << endl;
if(delta < 0)
        cout << "Pas de solutions réelles à l'équation" << endl;
if(delta == 0)
        cout << "Il existe une seule racine à l'équation: " << -b/(2*a) << endl;
if(delta  > 0)
        cout << "Il existe deux racines à l'équation, x1= " << (-b-sqrt(delta))/(2*a) << " x2= " << (-b+sqrt(delta))/(2*a) << endl;
cout << endl << "Appuyez sur une touche pour continuer";
getchar();
getchar();
return;
}

int main()
{
int a,b,c;
second nouveau;
system("clear");
cout << "Bienvenue sur le résolveur d'équation du second degré" << endl << endl;
cout << "L'équation à calculer est de la forme ax²+bx+c=0" << endl;
cout << "Entrez la valeur de a: ";
cin >> a;
cout << endl << "Entrez la valuer de b: ";
cin >> b;
cout << endl << "Entrez la valeur de c: ";
cin >> c;
nouveau.calculer(a,b,c);
return 0;
}

Conclusion :


Bon, je ne pense pas qu'il soit nécessaire d'expliquer beaucoup le prog car il est très simple. Juste un petit truc, pour le compiler avec g++ on fait.
g++ -Wall -c monprog.c //pour générer le .obj
puis pour créer le .exe on fait
g++ monprog.o -o monprog //le -o monprog est facultatif il sert juste a définir le nom de l'executable, si on enlève cette option le programme se nomme a.out* par défaut.
Voilà, si vous avez des questions, critiques ou autre n'hésitez pas a m'écrire ou a laisser un commentaire!

A voir également

Ajouter un commentaire Commentaires
Lorsque j'ai fait le mien, j'ai pris des coefficients non forcément entiers...
Messages postés
9
Date d'inscription
lundi 17 novembre 2003
Statut
Membre
Dernière intervention
27 décembre 2004

pour compiler sous linux avec g++ on peut aussi taper la commande suivante: g++ -o [nom de l'exe] [nom de la source.cpp]. A propos des classes, effectivement inutile.
Messages postés
518
Date d'inscription
dimanche 2 décembre 2001
Statut
Membre
Dernière intervention
10 novembre 2007
3
Je suis parfaitement dacord avec vous !!!
Après être reppassé sur les vielles sources que j'ai posté y'a bien longtemps je me rends compte que CT pas super ce que je faisait, mais bon, fo bien débuter un jours :-)
Messages postés
1
Date d'inscription
samedi 7 décembre 2002
Statut
Membre
Dernière intervention
7 décembre 2002

c'est vrai que la classe ne sert absolument a rien...
Et comme dit Kaid ce n'esqt pas a une fonction membre d'afficher des informations... C'est a la fonction appelante de se charger de la partie affichage (par le biais de la caleur de retour)
Messages postés
949
Date d'inscription
mardi 2 octobre 2001
Statut
Membre
Dernière intervention
8 juillet 2006

Je trouve que GoldenEye à raison, les objets c'est bien, mais seulement si on n'a un concept objet à modéliser, ce qui n'est pas le cas ici.

Ensuite, on n'évite de mélanger interface utilisateur et traitement au niveau des objets: ce n'est pas à la classe d'afficher les informations mais au programme qui l'utilise. Cela permet une plus grande réutilisabilité des objets.

Dernière chose: l'extension du fichier doit être .C, .cc, .cpp ou .cxx, pour du C++, c'est mieux que .c.
Afficher les 6 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.