Sign in to follow this  
kingdragonman

programma in C che non fa quello che deve fare

Recommended Posts

Salve ragazzi, ho fatto questo programmino in C.. Però non mi esegue i cicli else if.. esegue solo il primo if.. mi potete aiutare?

Questo è il codice:

#include <stdio.h>void intestazione(void);void corpo(void);int main(){    intestazione();    corpo();    system("PAUSE");}void intestazione(void){     printf("*************************************\n");     printf("-------CONVERTITORE DA KW A CV-------\n");     printf("-----------PER LA TUA AUTO-----------\n");     printf("*************************************\n");     printf("______Realizzato da KingDragonman______\n");}void corpo(void){     float potkw, calcolo;     potkw = 0.0;     calcolo = 0.0;     printf("\n\n");     printf("Inserisci la potenza in kW della tua auto (che trovi scritta sul libretto di circolazione): ");     scanf("%f", &potkw);     calcolo = (potkw / 0.7355);     if(0.0<calcolo<40.0)        printf("\nLa tua auto possiede %.1f cavalli, sono un po' pochini!!\n\n", calcolo);     else if(40.1<calcolo<55.5)        printf("\nLa tua auto possiede %.1f cavalli, niente di particolare!!\n\n", calcolo);     else if(55.6<calcolo<65.5)        printf("\nLa tua auto possiede %.1f cavalli, non sono ne' molti ne' pochi!!\n\n", calcolo);     else if(65.6<calcolo<75.5)        printf("\nLa tua auto possiede %.1f cavalli, niente male!!\n\n", calcolo);     else if(75.6<calcolo<88.0)        printf("\nLa tua auto possiede %.1f cavalli, molto buoni!!!\n\n", calcolo);     else if(88.1<calcolo<99.9)        printf("\nLa tua auto possiede %.1f cavalli, ottimi direi!!\n\n", calcolo);     else if(100.0<calcolo<130.0)        printf("\nLa tua auto possiede %.1f cavalli, complimenti!! Macchina molto rapida e veloce!!!\n\n", calcolo);     else if(calcolo>130.0)        printf("\nLa tua auto possiede %.1f cavalli, eccezionale!!!! Va' come una Ferrari :-P\n\n", calcolo);     printf("Grazie per l'attenzione, a presto!!\n\n");}

grazie a tutti!!!

Share this post


Link to post
Share on other sites

Il C non supporta controlli della forma .. < .. < ... Prova a spezzare il test del primo if così

0.0 < calcolo && calcolo < 40.0

idem per tutti i controlli successivi

Li supporta eccome ma il compilatore li interpreta come da specifica del linguaggio.

insomma fai come ti ha detto angusticeps, meglio se abbondando con le parentesi

;-)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this