Nie wiem czemu algorytm mi nie dzial (zapetla sie). Jakby ktos znalaz blad to bylbym wdzieczny. Algorytm:
/SZUKANIE INTERPOLACYJNE****************/
int szukinter(unsigned long int *tablica,unsigned long int szukana, int maxsize, float *time,int *rezultat)
{
int l,p,k;
float alfa; //wspolczynik interpolacji
int lobiegow; //liczba wyszukiwan
int petla; //liczba obiegow petli - pomiar czasu
float start_time, end_time; //zmienne do pormiaru czasu (poczatkowy i koncowy)
start_time=clock();
for (petla=1000000;petla>0 ;petla--)
{
lobiegow=0;
l=0;
p=maxsize-1;
do
{
lobiegow++;
if (tablica[l]==tablica[p])
if (tablica[p]!=szukana)break; //dzielenie przez 0!
alfa=(float)(szukana-tablica[l])/(float)(tablica[p]-tablica[l]);
if (alfa>0&&alfatablica[k]) l=k+1;
else p=k-1;
}
}
while (tablica[k]!=szukana && alfa>0 && alfa