Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [c++] Area corona main + 2 function

    Ciao!

    Devo scrivere un main dove dichiaro due raggi con lo scanf, riferendomi poi alla function della corona circolare che a sua volta si riferisce alla function dell'area del cerchio per calcolare le due aree da sottrare



    #include <stdio.h>
    void main ()
    {
    float corona (float cerchio);
    float raggio_min, raggio_max,coronaa,cerchio_min, cerchio_max;
    printf ("Inserisci il raggio minimo\n");
    scanf ("%f",&raggio_min);
    printf ("Inserisci il raggio massimo\n");
    scanf ("%f",&raggio_max);
    coronaa=corona(cerchio_max, cerchio_min);
    printf ("L'area della corona e' %f\n",coronaa);
    }
    float corona (float cerchio_max, float cerchio_min)
    {
    float cerchio(float raggio);
    *
    **


    cerchio_min=cerchio(raggio_min);
    cerchio_max=cerchio(raggio_max);
    return cerchio_max-cerchio_min;
    }
    float cerchio(float raggio)
    {
    const float pi_greco=3.141596F;
    return pi_greco*raggio*raggio;
    }
    * undeclared identifer raggio_min
    ** undeclared identifer raggio_max

    Mi appaiono questi due errori, e se provo a dichiarare i due raggi nella function della corona, il programma mi da un risultato sballato :master: :master: :master:


  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Ci sono una serie di incongruenze ed errori nel sorgente.
    Quello corretto e'

    codice:
    #include <stdio.h> 
    
    float cerchio(float raggio) 
    { 
    const float pi_greco=3.141596F; 
    return pi_greco*raggio*raggio; 
    } 
    
    float corona (float raggio_max, float raggio_min) 
    { 
    return (cerchio(raggio_max)-cerchio(raggio_min)); 
    } 
    
    void main () 
    { 
    float raggio_min, raggio_max, coronaa; 
    
    printf ("Inserisci il raggio minimo\n"); 
    scanf ("%f",&raggio_min); 
    
    printf ("Inserisci il raggio massimo\n"); 
    scanf ("%f",&raggio_max); 
    
    coronaa = corona(raggio_max, raggio_min); 
    
    printf ("L'area della corona e' %f\n", coronaa); 
    }

  3. #3
    l'area della corona è... 0

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Ho eseguito il codice che ti ho mostrato e funziona regolarmente.

  5. #5
    ora anche io... avevo invertito l'ordine delle function

    grazie!

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.