Guest User

Untitled

a guest
Jan 23rd, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.69 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. //Krzysztof Mastalerz,Kajetan Mudlaff,Mateusz Hannon,Arek Rzadkiewicz
  4. int szukaj(int N,int x)
  5. {
  6.     int tab[N];
  7.     int k=0,l,p,i,j=1,zpom;
  8.     double alfa;
  9.     int tabk;//zmienna pomocnicz by suzkac po tbalicy
  10.     for(i=0;i<N;i++)
  11.     {
  12.             tab[i]=i;//wypelnianie tablicy elementami od 0 do n-1
  13.             }
  14.     l=0;
  15.     p=N-1;
  16.    
  17.     if(l==p)
  18.     {
  19.             if(x==tab[l])
  20.             printf("%d",l);//to jest dopisane dla przy
  21.             }
  22.             else
  23.             {
  24.                 do
  25.                 {
  26.                        alfa=(x-tab[l])/(tab[p]-tab[l]);
  27.                        if((alfa>=0)&&(alfa<=1))
  28.                        {
  29.                                  k=(int)(l+alfa*(p-l));
  30.                                  tabk=tab[k];
  31.                                  if(x>tabk)
  32.                                  l=k+1;
  33.                                  else if(tab[k]!=x)
  34.                                  p=k-1;
  35.                                  }
  36.                                  }
  37.                        while((tab[k]!=x)&&(l<p));
  38.                          if(tab[k]==x)
  39.                          return k;
  40.                          else if(tab[k]!=x)
  41.                          return k;
  42.                          }
  43.                          return -1;
  44.                          }
  45. int main()
  46. {
  47. int x,N;
  48.                 printf("podaj N i x\n");//podaje jaka duza tablica i liczba ktorej suzkam
  49.                 scanf("%d %d",&N,&x);
  50.                 printf("%d\n",szukaj(N,x));
  51.                 system("PAUSE");
  52.                 }
Add Comment
Please, Sign In to add comment