Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2010
    Messaggi
    11

    [C] double...operazione errata!

    ragazzi ho appena iniziato a studiare C.... e mi trovo su questo scoglio che non riesco a superare... ho fatto un piccolo programma con cui calcoli area e circ del cerchio tramite menù... è incompleto perchè purtroppo come da consegna per il compito devo usare "double" però le operazioni non mi risultano! facendo la circonferenza mi da 0 all'operazione! usando %f...usando %d funziona ma naturalmente non mi da i numeri con la virgola!


    dove sbaglio?


    codice:
    #include <stdio.h>
    #include <math.h>
    void area( double );
    void circonferenza (double);
    
    
    
    
    int main (void) {
    
    double raggio=0;
    int cifrascelta=0;
    
    printf ("digitare raggio circonferenza: ");
    scanf ("%f" , &raggio);
    printf ("\n digita: \n [1]per calcolare la circonferenza\n [2]per calcolare l'area\n");
    scanf ("%d", &cifrascelta);
    
    if (cifrascelta==1) {
    
    printf ("la circonferenza del cerchio e:");
    circonferenza(raggio);
    }
    
    if (cifrascelta==2) {
    
    printf ("l area del cerchio è: ");
    area(raggio);
    
    
    return 0;
    }
    }
    
    void area (double raggio ){
    float area=0;
    float pigreco=3.14;
    area=raggio*raggio*pigreco;
    printf ("l'area is: %.2f", area);
    
    }
    
    
    
    
    void circonferenza ( double raggio ) {
    double circonferenza;
    double pigreco=3.14;
    circonferenza= raggio*2*3.14;
    printf(" %.f" ,circonferenza);
    
    }

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,304

    Moderazione

    Quando si posta del codice, si devono usare i tag CODE, come da Regolamento Interno, in modo da mantenere indentazione e formattazione e agevolarne la lettura. Inoltre, il codice dovrebbe essere appunto indentato, altrimenti rimane comunque un'accozzaglia poco leggibile.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  3. #3
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Nella scanf per i double devi usare %lf

    scanf ("%lf" , &raggio);

    Correggi anche i float che usi nella funzione ...
    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.