Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21
  1. #1

    [C++] Neofita problemi con le funzioni

    Ciao a tutti

    ho iniziato a programmare da poco e subito mi sono inbattuto in un errore (magari cretino)..

    Ora vi spiego:

    ho creato la funzione main (che ci vuole sempre..Giusto?)

    questa funzione fa la somma tra 2 numeri dati dall'utente.

    poi sotto alla funzione main()
    ho creato la funzione moltiplica
    stessa cosa di su ma moltiplica..

    quando compilo il programma esegue solo la funzione main e ignora l'atra.

    Il codice è questo?

    codice:
    #include<file.h>
    int main()
    {
    .....// addizione
    }
    
    int Moltiplica( arg1 , arg 2)
    
    {
    ...... // moltiplica
    }
    entrambe funzionano se sono da sole ma se io volessi scegliere quale funzione chiamare come faccio?

    in php facevo nomefunz(arg1,arg2);

    qui non mi funge....
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  2. #2
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    Per eseguire una funzione devi invocarla come fai in php, ad esempio:

    codice:
    #include<file.h>
    #include <iostream>
    
    
    //metti prima il prototipo di Moltiplica se no il compilatore
    //non la vede, oppure sposta il main dopo la funzione
    //Moltiplica
    int Moltiplica( arg1 , arg 2);
    
    
    int main(){
        int risultato = Moltiplica(2, 10);
        std::cout << "Risultato di 2 per 10: " << risultato;
    }
    
    
    int Moltiplica( arg1 , arg 2){
         return arg1 * arg2;
    }

    Sun Certified Java Programmer

    EUCIP Core Level Certified

    European Certification of Informatics Professionals

  3. #3

    posto ilcodice cosi se volete mi correggete gli orrori...

    codice:
    #include <iostream>
    
    using namespace std;
    int Moltiplicazione();
    
    main ()
        {
        float a, b, totale;
         
              cout << "Benvenuto nel sommatore automatico..." << endl;
              cout << "Primo numero.. "  ; cin >> a;
              cout << "Secondo numero..  ";  cin >> b; cout << endl;
              totale= a+b ;
              cout << a <<" + "<< b <<" = " << totale << endl;
              
              system("PAUSE"); 
        char exit;
       cin >> exit; 
       
        }
        
    int Moltiplicazione ( float a, float b)
        {
              cout << "Benvenuto nel moltiplicatore automatico..." << endl;
              cout << "Primo numero.. "  ; cin >> a;
              cout << "Secondo numero..  ";  cin >> b; cout << endl;
              float totale;
              totale= a*b ;
              cout << a <<" X "<< b <<" = " << totale << endl;
              
              system("PAUSE"); 
               char exit;
               cin >> exit; 
        }

    ora io vorrei scegliere la funzione da usare ..

    se mi serve moltiplicare chiamo la funzione moltiplica se mi serve sommare chiamo la funzione main..

    Oppure si può impostare in main in qualche modo tale che mi permetta di sceglier tra le funzioni da me create..


    si può ?
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  4. #4
    Utente di HTML.it L'avatar di DydBoy
    Registrato dal
    Jul 2005
    Messaggi
    165
    Fatti una funzione per ogni operazione (compreso l'addizione) e nel main le richiami a seconda delle scelte dell'utente.

  5. #5
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352

    Re: posto ilcodice cosi se volete mi correggete gli orrori...

    Originariamente inviato da Barman@83
    ora io vorrei scegliere la funzione da usare ..

    se mi serve moltiplicare chiamo la funzione moltiplica se mi serve sommare chiamo la funzione main..

    Oppure si può impostare in main in qualche modo tale che mi permetta di sceglier tra le funzioni da me create..


    si può ?
    Dopo che ti sei creato una funzione anche per la somma, nel main chiedi all'utente l'operazione che vuole eseguire, leggi la sua scelta e fai un if sulla scelta per richiamare la funzione opportuna.

    Sun Certified Java Programmer

    EUCIP Core Level Certified

    European Certification of Informatics Professionals

  6. #6
    ok io ho fatto come mi dicevate ma dopo la scelta il programma termina e non sceglie le funzioni...

    in compilazione mi da zero errori in esecuzione dopo la scelta non fa più niente.

    Vi posto il codice.


    codice:
    #include <iostream>
    
     using namespace std;
     
    int Moltiplicazione(int a , int b);
    int Somma(int a , int b);
    
    int main()
        {
             int calc;
                       
              cout << "cosa vuoi fare? " << endl ; 
              cout << "1- Somma" << endl ;
              cout << "2- Moltiplicazione" << endl;
              cin >>  calc;
              
              if ( calc == 1) { int Somma (int a , int b); }
              else   int Moltiplicazione(int a , int b);
              
        }
        
    int Somma(int a, int b)
        {
        
         int totale;
         
              cout << "Benvenuto nel sommatore automatico..." << endl;
              cout << "Primo numero.. "  ; cin >> a;
              cout << "Secondo numero..  ";  cin >> b; cout << endl;
              totale= a+b ;
              cout << a <<" + "<< b <<" = " << totale << endl;
              
              return totale;
              
              system("PAUSE"); 
        char exit;
        cin >> exit; 
       
        }
        
    int Moltiplicazione ( int a, int b)
        {
             int totale;
                        
              cout << "Benvenuto nel sommatore automatico..." << endl;
              cout << "Primo numero.. "  ; cin >> a;
              cout << "Secondo numero..  ";  cin >> b; cout << endl;
              totale= a*b ;
              cout << a <<" X "<< b <<" = " << totale << endl;
              
              return totale;
              
              system("PAUSE"); 
               char exit;
               cin >> exit; 
        }
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  7. #7
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    codice:
    if ( calc == 1)
        Somma (int a , int b);
    else
        Moltiplicazione(int a , int b);

    Sun Certified Java Programmer

    EUCIP Core Level Certified

    European Certification of Informatics Professionals

  8. #8
    NON VA

    allora
    questo mi da errore di compilazione
    if ( calc == 1)
    Somma (int a , int b);
    else
    Moltiplicazione(int a , int b);
    pero se metto int davanti

    così
    if ( calc == 1)
    int Somma (int a , int b);
    else
    int Moltiplicazione(int a , int b);

    me lo compila...

    ma mi da il problema di prima....

    dopo la scelta esce dall'esecuzione...




    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

  9. #9
    Utente di HTML.it L'avatar di anx721
    Registrato dal
    Apr 2003
    Messaggi
    2,352
    codice:
    if ( calc == 1)
        Somma (a , b);
    else
        Moltiplicazione(a ,b);
    avevo sbagliato ascrivere

    Sun Certified Java Programmer

    EUCIP Core Level Certified

    European Certification of Informatics Professionals

  10. #10
    Originariamente inviato da anx721
    codice:
    if ( calc == 1)
        Somma (a , b);
    else
        Moltiplicazione(a ,b);
    avevo sbagliato ascrivere
    ora mi da errore in compilazione

    mi dice che vuole gli int dentro le parentesi..

    io compilo con DevC++

    intanto provo ancora se hai delle idee dimmi...
    3/6/2003 è morto l'angelo della mia vita..
    www.markwebinformatica.net
    My BLOG

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 © 2025 vBulletin Solutions, Inc. All rights reserved.