|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Bannato
Iscritto dal: Oct 2006
Messaggi: 170
|
Ho bisogno di una mano(programma in c)
Salve a tutti, avrei bisogno di un aiuto, sono da giorni alla ricerca della risoluzione del seguente esercizio:
Inseriti tre interi da tastiera, ordinarli dal piu grande al piu piccolo. Continuo a bsatterci la testa ma non troivo la soluzione. C'è una qualche anima buona che potrebbe postarmelo?? Ringrazio tutti in anticipo. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
|
io non posterei direttamente, il codice, preferirei aiutarti a scriverlo.
quoto -fidel- : Quote:
|
|
|
|
|
|
|
#3 |
|
Bannato
Iscritto dal: Oct 2006
Messaggi: 170
|
Il problema è che non ho scritto niente, e lo devo consegnare domani, se avevo più tempo ce lavrei speso, il punto è che sono in forte ritardo. Mi aiutate??? please
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
|
scanf("%d %d %d",&a,&b,&c);
if (a > b) { if (a > c) printf("%d",a); else printf("%d",c); } else { if(b > c) printf("%d",b); else printf("%d",c); } |
|
|
|
|
|
#5 |
|
Bannato
Iscritto dal: Oct 2006
Messaggi: 170
|
ti ringrazio per averci provato, ma stampa solo il numero maggiore dei 3, invece deve stamparli tutti e tre dal piu grande al piu piccolo.
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
|
Quote:
|
|
|
|
|
|
|
#7 |
|
Bannato
Iscritto dal: Oct 2006
Messaggi: 170
|
Hai ragione, ma sono incapace...
|
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
|
lho scritto al volo nn so se funziona
Codice:
if (a > b)
{
if (a > c)
{
printf("%d\n",a);
if(b>c) printf("%d\n%d\n",b,c);
else printf("%d\n%d\n",c,b);
}
else printf("%d\n%d\n%d\n",c,a,b);
}
else
{//b>a
if(b > c)
{
printf("%d",b);
if(c>a) printf("%d\n%d\n",c,a);
else printf("%d\n%d\n",a,c);
}
else printf("%d\n%d\n%d\n",c,b,a);
}
|
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: Jan 2006
Messaggi: 2722
|
Ecco come ragionerebbe un bimbo delle elementari
Codice:
#include <stdio.h>
int main(void)
{
int x, y, z;
int ordinati[3];
printf("Inserisci 3 numeri interi positivi separati da spazio (es: 4 7 3): ");
scanf("%d %d %d", &x, &y, &z);
if (x < y)
{
if (x < z)
{
ordinati[0] = x;
if (y < z)
{
ordinati[1] = y;
ordinati[2] = z;
}
else
{
ordinati[1] = z;
ordinati[2] = y;
}
}
else
{
ordinati[0] = z;
ordinati[1] = x;
ordinati[2] = y;
}
}
else
{
if (x < z)
{
ordinati[0] = y;
ordinati[1] = x;
ordinati[2] = z;
}
else
{
if (y < z)
{
ordinati[0] = y;
ordinati[1] = z;
ordinati[2] = x;
}
else
{
ordinati[0] = z;
ordinati[1] = y;
ordinati[2] = x;
}
}
}
printf("Numeri ordinati: %d %d %d\n", ordinati[0], ordinati[1], ordinati[2]);
return 0;
}
Spero il concetto sia chiaro, magari riesci a snellire il codice postato, oppure puoi trovare un modo più intelligente e meno meccanico.
__________________
- Spesso gli errori sono solo i passi intermedi che portano al fallimento totale. - A volte penso che la prova piu' sicura che esiste da qualche parte una forma di vita intelligente e' il fatto che non ha mai tentato di mettersi in contatto con noi. -- Bill Watterson Ultima modifica di -fidel- : 18-10-2006 alle 21:09. |
|
|
|
|
|
#10 | |
|
Senior Member
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
|
Quote:
|
|
|
|
|
|
|
#11 |
|
Bannato
Iscritto dal: Feb 2003
Messaggi: 947
|
Codice:
#include <stdio.h>
void main(void)
{
int a,b,c;
printf("Inserire 3 numeri interi: ");
scanf("%d %d %d",&a,&b,&c);
if(a>b)
{
a=a-b;
b=b+a;
a=b-a;
}
if(b>c)
{
b=b-c;
c=c+b;
b=c-b;
}
if(a>b)
{
a=a-b;
b=b+a;
a=b-a;
}
printf("Numeri ordinati: %d %d %d\n",a,b,c);
}
|
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: May 2006
Città: Salerno
Messaggi: 936
|
Quote:
|
|
|
|
|
|
|
#13 | |
|
Bannato
Iscritto dal: Feb 2003
Messaggi: 947
|
Quote:
|
|
|
|
|
|
|
#14 | ||
|
Senior Member
Iscritto dal: Jan 2006
Messaggi: 2722
|
Quote:
Quote:
__________________
- Spesso gli errori sono solo i passi intermedi che portano al fallimento totale. - A volte penso che la prova piu' sicura che esiste da qualche parte una forma di vita intelligente e' il fatto che non ha mai tentato di mettersi in contatto con noi. -- Bill Watterson |
||
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2794
|
Forse non ha capito lo scambio di valori tra due variabili senza usarne una di appoggio..
|
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Oct 2006
Messaggi: 352
|
Quote:
cmq se nn riesci a fare sto programma da solo diciamo che puoi darcela su cn la programmazione.. =_= |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:54.



















