Ciao a tutti,
sto facendo pratica con uml
partendo da un esercizio parzialmente fatto ho dovuto aggiungere le seguenti funzioni
fraction
---------------------------
- m_Numer
- m_Denom
----------------------------
+ set( numertator : int , denominator : int )
+ toString() : Qstring
+ toDouble() : double
+ add( other : const fraction & ) : fraction
+ subtract ( other : const fraction & ) : fraction
+ multiply ( other : const fraction & ) : fraction
+ divide ( other : const fraction & ) : fraction
---------------------------------------------------
Potreste dirmi se ho fatto giusto l'esercizio?
grazie
codice:// fraction.cpp #include "fraction.h" QTextStream cout(stdout); // inizializza oggetto Fraction::Fraction(int number, int demon) : m_Numer(number), m_Denom(demon) { } // Setta valori void Fraction::set (int number, int demon){ m_Numer = number; m_Denom = demon; } // converti in stringa QString Fraction::toString () const{ return QString ("%1 / %2 ").arg (m_Numer).arg (m_Denom); } // converti in double double Fraction::toDouble () const{ return 1.0 * m_Numer / m_Denom; } // somma i due oggetti void Fraction::add (const Fraction &other){ m_Numer += other.m_Numer; m_Denom += other.m_Denom; } // moltiplica i due oggetti void Fraction::multiply( const Fraction &other){ m_Numer *= other.m_Numer; m_Denom *= other.m_Denom; } // divide i due oggetti void Fraction::divide (const Fraction &other){ if ( m_Numer > other.m_Numer and m_Denom > other.m_Denom ){ m_Numer /= other.m_Numer; m_Denom /= other.m_Denom; }else{ cout << "\nNumeri non divisibili\n"; } } // sottrae i due oggetti void Fraction::subtrack ( const Fraction &other){ m_Numer -= other.m_Numer; m_Denom -= other.m_Numer; } // visualizza il valore degli oggetti void Fraction::diplay (){ cout << "\nm_Numer " << m_Numer; cout << "\nm_Denom " << m_Denom; }codice:#include "fraction.h" // main cpp int main() { Fraction val1(1,2); Fraction val2(3,4); val1.add (val2); // somma i due oggetti val1.diplay (); // mostra valori val1.set (1,2); // setta i valori val1.subtrack(val2); // sottrae valori val1.diplay (); // mostra valori val1.set (1,2); // setta i valori val1.multiply (val2); // moltiplica i valori val1.diplay (); // mostra valori val1.set (1,2); // setta i valori val1.divide (val2); // divide i valori val1.diplay (); // mostra valori return 0; }codice:#ifndef FRACTION_H // fraction.h #define FRACTION_H #include <QString> #include <QTextStream> class Fraction { public: Fraction(int number, int demon ); // inizializza oggetto void set(int number, int demon); // Setta valori QString toString() const; // converti in stringa double toDouble() const; // converti in double void add ( const Fraction &other); // somma i due oggetti void multiply( const Fraction &other); // moltiplica i due oggetti void subtrack( const Fraction &other); // sottrae i due oggetti void divide( const Fraction &other); // divede i due oggetti void diplay(); // mostra valori private: int m_Numer, m_Denom; }; #endif // FRACTION_H

Rispondi quotando