Vai al contenuto

Problema in C : I classici tre numeri, trova il maggiore !

Inviato

Utilizzo Dev C++ come compilatore e da poco mi sono dato alla programmazione, facendo come da titolo stupidissimi programmi .

L'ultimo che ho provato a fare è che inserendo 3 numeri il programma mi stampi a schermo il maggiore .

Ho eseguito il seguente procedimento:

 

#include<stdio.h>
#include<stdlib.h>
main()
{
     int a,b,c;
     printf("Inserisci primo numero: ");
     scanf("%d",&a);
     printf("Inserisci secondo numero: ");
     scanf("%d",&b);
     printf("Inserisci terzo numero: ");
     scanf("%d",&c);
     if(a>b)and(a>c)printf("Il maggiore è %d     ",a;
     else if(b>c)printf("Il maggiore è %d     ",b;
     else printf("Il maggiore è %d     ",c;
     system("pause");
     }

 

 

Quando vado a compilare mi da errore alla dodicesima riga, quella dove ho inserito la funzione IF . Non si può inserire due funzioni logiche come IF e AND una dientro l'altra come ho fatto io ?

Alla tredicesima riga posso inserire il comando ELSE seguito da IF come ho fatto io ?

Modificato da strowrook

Featured Replies

Inviato
Scusate l'intromissione ma il C è una cosa che mi affascina da molti anni, ormai da quando ho scritto il mio primo printf("Hello world!") copiato dal Kerningham e Ritchie è passato parecchio tempo ma nonostante abbia scritto tonnellate di codice in mille modi, il C resta sempre una sfida tra l'uomo e la macchina.

A disptanza di tanti anni io ed un mio vecchio amico ancora facciamo a gara a chi scrive il programma più ... sintetico.

 

Vorrei dare un piccolo contributo a .. complicare la vita ..asd

 

#include<stdio.h>

#include<stdlib.h>

main()

{

int a,b,c;

printf("Inserisci primo numero: ");

scanf("%d",&a);

printf("Inserisci secondo numero: ");

scanf("%d",&b);

printf("Inserisci terzo numero: ");

scanf("%d",&c);

 

printf("Il maggiore è %d \n ",(a>b ? (a>c ? a : (c>b? c : b)) : ( b>c ? b : c)));

return (0);

}

 

La mia più che una provocazione vuole essere uno stimolo ad approfondire un linguaggio semplice per fare cose 'toste'.

 

Ahahahaa Operatori Ternari! Mitici!

 

bhè, allora perchè non un:

 

#include<stdio.h>

#include<stdlib.h>

main()

{

int max[3] = 0, i =0, aux=0;

do{

printf("Inserisci il %d° numero: ", i);

scanf("%d", &max);

if(aux < max) aux = max;

i++;

} while(i==3);

 

printf("Il maggiore è %d \n ", aux);

return (0);

}

 

che dite, può andare? :)

  • 4 mesi dopo...
Inviato
mancavano le parentesi (importantissime)

Crea un account o accedi per lasciare un commento