Buonasera,
oggi il professore ci ha dato un esercizio nel quale dati 3 numeri dall'utente,tramite funzione void dobbiamo metterli in ordine,il problema è che io la settimana precedente ero assente al momento della spiegazione(
),perciò non so cosa fare.
Il vero problema però è che nel void ordinaAsc non possono comparire printf,quindi devo solo riordinare e rimandare al main,ma come si fa?
(le parti segnate in rosso sono quelle nelle quali faccio fatica a capire cosa fare...)
codice:
# include <stdio.h>
void absolute(int *);
void ordinaAsc(int , int , int );
int main()
{
int num1, num2, num3;
printf("Inserisci il primo numero: ");
scanf("%d", &num1);
fflush(stdin);
absolute(&num1);
printf("Inserisci il secondo numero: ");
scanf("%d", &num2);
fflush(stdin);
absolute(&num2);
printf("Inserisci il terzo numero: ");
scanf("%d", &num3);
fflush(stdin);
absolute(&num3);
ordinaAsc(&num1, &num2, &num3);
printf("%d\n%d\n%d\n");
getchar();
return 0;
}
void absolute (int *num)
{
if(*num<0)
{
*num=*num*(-1);
}
}
void ordinaAsc(int num1, int num2, int num3)
{
if(num1>=num2 && num1>=num3 && num2>=num3)
{
num1,num2,num3
}
else if(num1>=num2 && num2<=num3 && num1>=num3)
{
num1, num3, num2;
}
else if(num2>=num3 && num2>=num1 && num3>=num1)
{
num2, num3, num1;
}
else if(num2>=num1 && num1>=num3 && num2>=num3)
{
num2, num1, num3;
}
else if(num3>=num2 && num2>=num1 && num3>=num1)
{
num3, num2, num1;
}
else if(num3>=num2 && num1>=num2 && num3>=num1)
{
num3, num1, num2;
}
}
Grazie