Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269

    Problema Funzione VOID C++

    Buonasera ragazzi, ecco il mio problema:
    Ho una funzione VOID del tipo:

    void prodotto (double a, double b, double *r) {

    double acc, cont;
    acc = 0;
    cont = 0;

    do {

    cont = cont + 1;
    acc = acc + a;

    } while ( cont < b );

    }

    Adesso praticamente devo stampare a video il valore di acc.Come devo fare? Come richiamo la funzione nel main? Grazie anticipatamente!
    Con i sogni possiamo conoscere il futuro...

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,472
    Ma non sai stampare il valore di acc o non sai chiamare la funzione?

    La variabile la stampi (visualizzi) con la

    printf("%f\n", acc);

    La funzione la chiami con il suo nome passando i due valori


    prodotto(x, y, &z);
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269
    Già fatto 10.000 volte ma non va... guarda la funzione in basso... devo far si che il valore di acc vada a finire in *r per poi stampare a video r.
    Mi spiego in poche parole io la stampo facendo:

    prodotto(a, b, &r);
    cout << r;

    però non mi stampa nulla...
    Con i sogni possiamo conoscere il futuro...

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,472
    Beh .... hai chiesto come stampare acc, hai chiesto come chiamare la funzione, ma l'unica cosa che dovevi chiedere (come restituire il valore acc tramite il terzo parametro) non l'hai chiesto ...

    Prima della fine della funzione, inserisci

    *r = acc;
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269
    Ecco, ho provato a fare cosi:

    void prodotto (double a, double b, double *r) {

    double acc, cont;
    acc = 0;
    cont = 0;

    do {

    cont = cont + 1;
    acc = acc + a;


    } while ( cont < b );

    cout << acc;

    }

    Ho messo la cout subito fuori al ciclo, però mi sembra molto strano... a questo punto mi bisogna fare solamente:

    prodotto(a, b, &r);

    per richiamare la funzione, mi sembra stranissima sta cosa...
    Con i sogni possiamo conoscere il futuro...

  6. #6
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269
    Si ho fatto come hai detto tu...
    Ho provato tutti i modi... cavolo, tranne questo!
    Con i sogni possiamo conoscere il futuro...

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,472
    Hai letto l'ultima risposta che ti ho dato?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  8. #8
    Utente di HTML.it L'avatar di gaten
    Registrato dal
    Jul 2007
    Messaggi
    1,269
    Guarda qui:

    void quoziente (double a, double b, double *r) {

    double acc, cont;
    acc = 0;
    cont = 0;

    do {

    acc = acc + b;
    cont = cont + 1;

    } while ( a < acc );

    *r = cont;

    }

    Questa è un altra funzione.
    In questo caso devo restituire il valore di cont attraverso il terzo parametro...
    Se faccio 12 : 4... mi restituisce sempre 1
    Con i sogni possiamo conoscere il futuro...

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,472
    Deve essere

    ( acc < a )

    e non il contrario ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.