Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #ifndef DEF_FRACTION
- #define DEF_FRACTION
- #include <iostream>
- class Zfraction
- {
- public:
- Zfraction();
- Zfraction(int m_numerateur, int m_denominateur);
- Zfraction(int m_numerateur);
- void afficher(std::ostream &flux) const;
- Zfraction& operator+=(Zfraction const& fraction);
- Zfraction add(Zfraction const& fraction) const;
- private:
- int m_numerateur;
- int m_denominateur;
- };
- std::ostream& operator<<(std::ostream &flux, Zfraction fraction);
- Zfraction operator+(Zfraction const& fraction1, Zfraction const& fraction2);
- #endif
- #include "Zfraction.h"
- Zfraction::Zfraction()
- {
- m_numerateur=1;
- m_denominateur=0;
- }
- Zfraction::Zfraction(int numerateur, int denominateur)
- {
- m_numerateur=numerateur;
- m_denominateur=denominateur;
- }
- Zfraction::Zfraction(int numerateur)
- {
- m_numerateur=numerateur;
- m_denominateur=1;
- }
- void Zfraction::afficher(std::ostream &flux) const
- {
- flux << m_numerateur<<"/"<<m_denominateur;
- }
- std::ostream& operator<<(std::ostream &flux, Zfraction const& une_fraction)
- {
- une_fraction.afficher(flux);
- return flux;
- }
- Zfraction Zfraction::add(Zfraction const& fraction) const
- {
- Zfraction somme;
- somme.m_numerateur=(m_numerateur*fraction.m_denominateur)+(m_denominateur*fraction.m_numerateur);
- somme.m_denominateur=m_denominateur*fraction.m_denominateur;
- return somme;
- }
- Zfraction operator+(Zfraction const& fraction1, Zfraction const& fraction2)
- {
- Zfraction resultat;
- resultat = fraction1.add(fraction2);
- return resultat;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement