Pagina 2 di 3 primaprima 1 2 3 ultimoultimo
Visualizzazione dei risultati da 11 a 20 su 22
  1. #11
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Ho provato il tuo codice con due compilatori diversi e non ho avuto alcun messaggio di errore o di warning. Quale compilatore usi?

    Comunque quei due messaggi sono semplici warning e non errori veri e propri ... dovresti poter eseguire comunque il programma ...

  2. #12
    Utente di HTML.it L'avatar di eclips
    Registrato dal
    Apr 2005
    Messaggi
    48
    prova questo:

    #include <stdio.h>
    #include <conio.h>

    int main(void)
    {
    float reddito;

    printf("Inserire il reddito in euro (es: 13402,32):\n");
    scanf("%f", &reddito);

    // completare usando la struttura if .... elseif ...elseif ..... else
    if(reddito < 7000)
    printf ("sei esente dalle tasse \n Importo dovuto è 0");
    else
    if((reddito > 7000) && (reddito < 13000))
    printf("aliquota da pagare e' 13x100 %f\n", (reddito*13)/100);
    else
    printf("aliquota 20x100 %f\n", (reddito*20)/100);

    //printf("\n\nPremi un tasto per uscire");
    fflush(stdin);
    // getch(); // trucco per far rimanere aperta la finestra di testo
    system("PAUSE");// simile al getch()
    return 0;
    }

  3. #13
    Originariamente inviato da oregon
    Ho provato il tuo codice con due compilatori diversi e non ho avuto alcun messaggio di errore o di warning. Quale compilatore usi?

    Comunque quei due messaggi sono semplici warning e non errori veri e propri ... dovresti poter eseguire comunque il programma ...
    Uso DEV-C++, però nelle opzioni di compilazione ho aggiunto questo comando "-g3 -Wall", penso sia per questo che mi escono i warning...

    comunque a me non funzia, perchè una volta che lo eseguo, se metto come reddito 10000,00 mi dice che devo pagare 0...

    boh...

  4. #14
    Quel comando dev'essere relativo alla compilazione di parti del kernel, per cui forse è quello il motivo dell'errata compilazione.

    Prova a toglierlo.

  5. #15
    ok, l'ho tolto, ma il programma non funzia lo stesso...

    riposto il codice completo:

    codice:
    #include <stdio.h>
    
    int main()
    {
        float reddito;
    
        printf("Inserire il reddito in euro (es: 13402,32):\n");
        scanf("%f", &reddito);
    
        // completare usando la struttura if .... elseif ...elseif ..... else
        if(reddito < 7000)
           printf ("sei esente dalle tasse \n Importo dovuto è 0");
        else if((reddito > 7000) && (reddito < 13000))
               printf("aliquota da pagare è 13%% %d\n", (reddito*13)/100);
        else
             printf("aliquota 20%% %d\n", (reddito*20)/100);
           
        printf("\n\nPremi un tasto per uscire");
        fflush(stdin);
        getchar();   // trucco per far rimanere aperta la finestra di testo
        return 0;
    }

  6. #16
    Ora funziona:

    codice:
    #include <stdio.h>
    
    int main()
    {
        float reddito;
        int conto;
    
        printf("Inserire il reddito in euro (es: 13402,32):\n");
        scanf("%f", &reddito);
    
        // completare usando la struttura if .... elseif ...elseif ..... else
        if(reddito < 7000)
           printf ("sei esente dalle tasse \n Importo dovuto è 0");
        else if((reddito > 7000) && (reddito < 13000)) {
               conto = (reddito*13)/100;
               printf("aliquota da pagare è 13%% %d\n", conto);
        } else {
               conto = (reddito*20)/100;
             printf("aliquota 20%% %d\n", conto);
        }
           
        printf("\n\nPremi un tasto per uscire");
        fflush(stdin);
        getchar();   // trucco per far rimanere aperta la finestra di testo
        return 0;
    }

  7. #17
    Utente di HTML.it L'avatar di GabbOne
    Registrato dal
    Mar 2006
    Messaggi
    577
    sicuramente non è per questo ma nel secondo if devi meffetre (reddito>=7000) altrimenti se inserisci 7000 ti da l'aliquota al 20 %


  8. #18
    Era proprio per quello invece.
    Il valore restituito era sempre 0, significa che sbagliava il calcolo mettendolo dov'era prima.

    Hai comunque ragione anche te, perchè un valore (senza il >=) non veniva considerato.

  9. #19
    Utente di HTML.it L'avatar di eclips
    Registrato dal
    Apr 2005
    Messaggi
    48
    Originariamente inviato da enrico999
    ok, l'ho tolto, ma il programma non funzia lo stesso...

    riposto il codice completo:

    codice:
    #include <stdio.h>
    
    int main()
    {
        float reddito;
    
        printf("Inserire il reddito in euro (es: 13402,32):\n");
        scanf("%f", &reddito);
    
        // completare usando la struttura if .... elseif ...elseif ..... else
        if(reddito < 7000)
           printf ("sei esente dalle tasse \n Importo dovuto è 0");
        else if((reddito > 7000) && (reddito < 13000))
               printf("aliquota da pagare è 13x100 %d\n", (reddito*13)/100);
        else
             printf("aliquota 20x100 %d\n", (reddito*20)/100);
           
        printf("\n\nPremi un tasto per uscire");
        fflush(stdin);
        getchar();   // trucco per far rimanere aperta la finestra di testo
        return 0;
    }
    togli i % di troppo dalle printf guarda il codice sopra dove ho messo x100

  10. #20
    I doppi % nella printf servono a far stampare alla stessa il simbolo %. Quindi deve funzionare.
    Es:
    codice:
    printf("100%%");
    deve stampare 100%.


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.