Ecco qui il pezzo di codice da sistemare
codice:
int main()
{
int a[SIZE];
int i;
int key;
for (i=0; i<SIZE; i++)
{
a[i]=2*i;
}
/*assegnazione temporanea per modificare l'array*/
a[1]=10;
printf("Immetti un numero tra 0 e 38: ");
scanf("%d", &key);
for (i=0; i<SIZE; i++)
{
if(a[i]<a[i+1])
{
binary(a, key, 0, SIZE-1);
}
else
{
linear(a , key, SIZE);
}
return 0;
}
}
allora... SIZE è 5 quindi l'array in fine risulta:
0, 10, 4, 6, 8
il mio problema è quando devo eseguire il controllo per vedere se l'array è ordinato dunque...
codice:
for (i=0; i<SIZE; i++)
{
if(a[i]<a[i+1])
{
binary(a, key, 0, SIZE-1);
}
else
{
linear(a , key, SIZE);
}
il primo controllo che fa è se 0<10 e siccome è vero esegue
binary(a, key, 0, SIZE-1); però il programma dovrebbe eseguire quell'istruzione solo se TUTTO l'array è ordinato...come potrei fare?