Simplifier une fraction ( débutant ) !!!

Signaler
Messages postés
4
Date d'inscription
jeudi 17 octobre 2002
Statut
Membre
Dernière intervention
3 avril 2003
-
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
-
#include
int main (){
int denominateur,mulfac1,mulfac2,facmul1,facmul2,facmulfinal;
int a,b,c,d;
cout<<"entrer un nombre"<<endl;
cin>>a;
cout<<"entrer deuxieme nombre"<<endl;
cin>>b;
cout<<"entrer troisieme nombre"<<endl;
cin>>c;
cout<<"entrer quatrieme nombre"<<endl;
cin>>d;
denominateur=b*d;
mulfac1=denominateur/b;
mulfac2=denominateur/d;
facmul1=a*mulfac1;
facmul2=c*mulfac2;
facmulfinal=facmul1+facmul2;
cout<<facmulfinal<<endl;
cout<<"--"<<endl;
cout<<denominateur;
return 0;

voilà je debut dans le c++ est j'ai un probleme je veux la fraction simplifier au maximum et que ça marche dans el tout les cas.... bon l'algo est pas fini c un début et puis je maitrise pas vraiment alors merci d'avance pour votre aide et si vous avez une aide pour le prog merci
jmb

3 réponses

Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
3
-------------------------------
Réponse au message : On reprend depuis début. Tu as une fraction et tu veux la simplifier de manière à ce qu'elle soit irréductible.
Soit a/b ta fraction
Calculons la liste des diviseurs de a et de b. On dit que c est un diviseur de d si la division de d par c donne un reste nul ("si la division de d par c tombe juste", c divise d). Il y en a forcément qui sont en commun. Parmi ceux là tu prends le plus grand : on l'appelle le pgcd (Plus Grand Commun Diviseur) de a et de b. Si tu divises a et b par ce nombre alors la fraction (a/pgcd)/(b/pgcd) sera irréductible.

Voyons un exemple : la fraction 15/18
Les diviseurs de 15 sont {1,3,5,15}
Les diviseurs de 18 sont {1,2,3,6,9,18}
Le plus grand en commun (le pgcd de 15 et 18) est comme on peut le voir 3
D'après ce qui est plus haut :
(15/3)/(18/3)=5/6 est irréductible.

Il existe de nombreuses manières de calculer le pgcd, la plus connue (et aussi la plus efficace est l'algorithme d'Euclide).

Quoi qu'il en soit, si tu veux simplifier une fraction, tu ne peux pas t'affranchir du calcul du pgcd

J'espère avoir été plus clair
-------------------------------
Messages postés
527
Date d'inscription
vendredi 14 septembre 2001
Statut
Membre
Dernière intervention
6 octobre 2008
3
-------------------------------
Réponse au message : calcule le pgcd du numérateur et du dénominateur de la fraction finale et divise les deux précités par ce pgcd. La fraction sera alors irréductible
-------------------------------

#include
int main (){
int denominateur,mulfac1,mulfac2,facmul1,facmul2,facmulfinal;
int a,b,c,d;
cout<<"entrer un nombre"<<endl;
cin>>a;
cout<<"entrer deuxieme nombre"<<endl;
cin>>b;
cout<<"entrer troisieme nombre"<<endl;
cin>>c;
cout<<"entrer quatrieme nombre"<<endl;
cin>>d;
denominateur=b*d;
mulfac1=denominateur/b;
mulfac2=denominateur/d;
facmul1=a*mulfac1;
facmul2=c*mulfac2;
facmulfinal=facmul1+facmul2;
cout<<facmulfinal<<endl;
cout<<"--"<<endl;
cout<<denominateur;
return 0;

voilà je debut dans le c++ est j'ai un probleme je veux la fraction simplifier au maximum et que ça marche dans el tout les cas.... bon l'algo est pas fini c un début et puis je maitrise pas vraiment alors merci d'avance pour votre aide et si vous avez une aide pour le prog merci
jmb
Messages postés
4
Date d'inscription
jeudi 17 octobre 2002
Statut
Membre
Dernière intervention
3 avril 2003

---------------------------------------------------
Réponse au message : calcule le pgcd du numérateur et du dénominateur de la fraction finale et divise les deux précités par ce pgcd. La fraction sera alors irréductible
---------------------------------------------------
oui je veut bien mais c une fonction "pgcd" non ?
et moi je voudrais pas utilisé de fonction, a quoi équivaut le pgcd ? c un truc avec le modulo je crois mais peut tu etre plus clair car j'ai pas touta fait compris merci encore jm