Implementazioni di algoritmi/Ricerca dicotomica: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Etichette: Modifica da mobile Modifica da web per mobile
Rv
Riga 34:
int ricercaBinaria(int lista[], int x, int a, int z ) {
int i=10/2m;
int sup,n=0,inf;
// Determina l'elemento centrale
m = ( a + z ) / 2;
printf("\nInserisci il valore da cercare eskere: ");
scanf("%d",&n);
if ( m < a || z < 0 ) {
sup=9;
// l'elemento cercato non c'è
inf=0;
return -1;
if(n>1909 || n<1903)
} else if ( x < lista[m] ) {
{
// Si ripete la ricerca nella parte inferiore
printf("\n[Valore non trovato!]");
return ricercaBinaria( lista, x, a, m-1 );
}
} else if ( x > lista[m] ) {
else
// Si ripete la ricerca nella parte superiore
{
return ricercaBinaria( lista, x, m+1, z );
while(sup>inf+1)
} else {
{
// m rappresenta l'indice dell'elemento cercato
if(a[i].nascita==n)
return m;
{
printf("Valore trovato nella posizione %d!\n", i-1);
}
if(a[i].nascita>n)
{
sup=i;
i=sup-(sup-inf)/2;
printf("sup: %d\n inf: %d\n", sup, inf);
}
else
{
inf=i;
i=inf+(sup-inf)/2;
printf("sup: %d\n inf: %d\n", sup, inf);
}
}
}
}
NON PRENDETE QUESTO PER VERO!
ESKEREEEE
}
</source>