Besoin d'aiiiide mes freres [Résolu]

Signaler
Messages postés
21
Date d'inscription
samedi 10 octobre 2009
Statut
Membre
Dernière intervention
15 mars 2010
-
Messages postés
28
Date d'inscription
lundi 12 janvier 2009
Statut
Membre
Dernière intervention
22 juin 2009
-
bonjour,
si c'est possible j'ai besoin de votre aide j'ai un devoir à rendre ,,,de faire un prog qui accepte un nombre de type fraction,,,lui faire reduire et l'afficher .

l'enoncé deu prof est ca :

class fraction
{
public :     fraction(){num 0 , dem 1;}
     fraction ( int inum , int idem);
private :
    int num , int dem;
    fraction raduire();
}

travail à faire :
1-definir le constructeur de cette class et la methode reduire
2-definir la methode qui affiche la valeure d'une fraction.

     ------- Et merciiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii------

5 réponses

Messages postés
987
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
30 août 2012
18
Pour la réduction :

 
int pgcd(int m, int n)
{
if(n == 0)
{
return m;
}else{
return pgcd(n, m%n);
}
}

void fraction::reduire() {
int pgcd = pgcd(this->num, this->dem);
this->num = this->num / pgcd;
this->dem = this->dem / pgcd;
}
Messages postés
308
Date d'inscription
jeudi 10 janvier 2008
Statut
Membre
Dernière intervention
27 octobre 2011

Comme je m'ennui je m'en vais t'expliquer, mais fait attention la prochaine fois que tu poste fait une recherche avant ;)

this pointe en fait sur un élément de ta classe.

Par exemple, imaginons le .h d'une classe :

class MyClass{
private : int a,b ;
public : MyClass();
Fonction(int, int) ;
~MyClass ;
};

On y voit un constructeur et un destructeur, une fonction qui demande deux int en paramètre et enfin a et b déclarés comme int.

Dans ton .cpp :
void MyClass::Fonction(int a, int b)
{
//du code
}

Comme tu peux le voir on transmet a et b, mais ces a et b ne sont pas les même que ceux déclarer dasn ton .h.

Donc si tu veux que le a et le b de ta clase valent le a et le b transmit tu ne peux evidemment pas faire :
void MyClass::Fonction(int a, int b)
{
a=a ;
b=b ;
}

Donc pour différencier les int transmis des int de la classe tu utilise this :

void MyClass::Fonction(int a, int b)
{
this->a=a;
this->b=b;
}


J'espere t'avoir aider et avoir été un bon prof pendant 5min (moi ca me fait réviser ma lecon ^^)
Messages postés
21
Date d'inscription
samedi 10 octobre 2009
Statut
Membre
Dernière intervention
15 mars 2010

Merci en tt cas meme ,,mais on a pas encore étudié le "this",,et comme je suis encore debutant j'ai pas su bien  l'utiliser
Messages postés
21
Date d'inscription
samedi 10 octobre 2009
Statut
Membre
Dernière intervention
15 mars 2010

merciiiiiiiiiiiiiiiiiiiiiiiiiiiii bcppppppp bcppppppp oui maintenenat j'ai un peu compris mon prof merciiii pour ton aide
Messages postés
28
Date d'inscription
lundi 12 janvier 2009
Statut
Membre
Dernière intervention
22 juin 2009

excellent prof ;) . tu ma remis les idées en place ^^