RISOLTO [C++] Suggerimenti per implementazione metodo "somma, moltiplica frazioni"

Stato
Discussione chiusa ad ulteriori risposte.

Svpam

Nuovo Utente
70
2
CPU
intel core i5-2310m
HDD
1TB Western digital 5400rpm
RAM
8gb ddr3
GPU
amd ati 7310m
Monitor
samsung E2220
OS
Windows 7; ubuntu 14.04; Kali linux; debian 7
Sto iniziando a studiare programmazione ad oggetti e sto facendo per esercizio una classe "razionale", per le operazioni su numeri razionali in forma di frazioni.
Tra i vari metodi ce ne sono due (somma e moltiplicazione) che io ho implementato così:

Codice:
    razionale razionale::moltiplica(const razionale& r)
    {
        cout<<r.numeratore*numeratore<<"/"<<r.denominatore*denominatore<<endl;
    }

    razionale razionale::somma(const razionale& r)
    {
        int sn;
        int sd;
        sn=(r.numeratore*denominatore)+(r.denominatore*numeratore);
        sd=(r.denominatore*denominatore);
        cout<<sn<<"/"<<sd<<endl;
    }

Codice:
int main()
{
    razionale r3 (1, 4);
    razionale r4(1, 5);
    razionale r6(5, 6);
    razionale r7(7, 8);
    r6.moltiplica(r7);
    r3.somma(r4);
    return 0;
}

Ora, visto che ho anche un metodo "riduci", per la riduzione ai minimi termini delle frazioni:

Codice:
int MCD (int n, int d)
    {
        int resto = d;
        while (resto != 0)
        {
            resto = n % d;
            n = d;
            d = resto;
        } 
        return n;
    }

    void razionale::riduci()
    {
        int a=MCD(numeratore, denominatore);
        cout<<numeratore/a<<"/"<<denominatore/a<<endl;
    }

vorrei sapere se è possibile collegare i metodi "somma" e "riduci", "moltiplica" e "riduci"; tale da avere il risultato di somma e moltiplicazione già ridotto ai minimi termini; in modo da avere un main del tipo:

Codice:
int main()
{
    razionale r3 (1, 4);
    razionale r4(1, 5);
    razionale r6(5, 6);
    razionale r7(7, 8);
    razionale r8;
    razionale r9;
    r8=r6.moltiplica(r7);
    r9=r3.somma(r4);
    r8.stampa();
    r9.stampa();
    return 0;
}
 

BAT

Moderatore
Staff Forum
Utente Èlite
22,671
11,453
CPU
1-Neurone
Dissipatore
Ventaglio
RAM
Scarsa
Net
Segnali di fumo
OS
Windows 10000 BUG
re: [C++] Suggerimenti per implementazione metodo "somma, moltiplica frazioni"

devi chiamare il metodo di riduzione nei metodi che eseguono la somma e la moltiplicazione
 

Svpam

Nuovo Utente
70
2
CPU
intel core i5-2310m
HDD
1TB Western digital 5400rpm
RAM
8gb ddr3
GPU
amd ati 7310m
Monitor
samsung E2220
OS
Windows 7; ubuntu 14.04; Kali linux; debian 7
re: [C++] Suggerimenti per implementazione metodo "somma, moltiplica frazioni"

devi chiamare il metodo di riduzione nei metodi che eseguono la somma e la moltiplicazione

grazie, risolto.
 
Stato
Discussione chiusa ad ulteriori risposte.

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!