Brollylssj

WyszukiwanieBinarneInter

Nov 25th, 2014
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.52 KB | None | 0 0
  1. #include<iostream>
  2. #include <string>
  3. #include <time.h>
  4.  
  5. using namespace std;
  6.  
  7. int const size = 10;
  8.  
  9. void wyszukiwanie_binarne(int *tab,int szukana)
  10. {
  11.     int lewy =0;
  12.     int prawy = size;
  13.     short find = false;
  14.     int srodek;
  15.  
  16.     while(lewy<=prawy)
  17.     {
  18.         srodek = (lewy +prawy)/2;
  19.  
  20.         if(tab[srodek] == szukana)
  21.         {
  22.             find =true;
  23.             cout<<"znaleziono liczbe"<<endl;
  24.             break;
  25.         }
  26.  
  27.         if(tab[srodek]> szukana)
  28.             prawy = srodek -1;
  29.         else
  30.             lewy = srodek +1;
  31.     }
  32.  
  33.     if(find == false)
  34.         cout<<"nie znaleziono liczby"<<endl;
  35. }
  36.  
  37.  
  38. void wyszukiwanie_interpolacyjne(int *tab,int szukana)
  39. {
  40.     int lewy =0;
  41.     int prawy = size;
  42.     short find = false;
  43.     int srodek;
  44.  
  45.     while(lewy<=prawy)
  46.     {
  47.         srodek = lewy +(szukana -tab[lewy]) * (prawy - lewy) / (tab[prawy] -tab[lewy]);
  48.  
  49.         if(tab[srodek] == szukana)
  50.         {
  51.             find =true;
  52.             cout<<"znaleziono liczbe"<<endl;
  53.             break;
  54.         }
  55.  
  56.         if(tab[srodek]> szukana)
  57.             prawy = srodek -1;
  58.         else
  59.             lewy = srodek +1;
  60.     }
  61.  
  62.     if(find == false)
  63.         cout<<"nie znaleziono liczby"<<endl;
  64.  
  65. }
  66.  
  67.  
  68. int main ()
  69. {
  70.  
  71.     int variable;
  72.     int tab[]= {3,4,6,7,8,9,10,23,45,55};
  73.  
  74.      cout<<"Twoja tablica to :"<<endl;
  75.  
  76.      for (int i = 0;i<size;i++)
  77.      {
  78.          cout<<tab[i]<<" ";
  79.  
  80.      }
  81.      cout<<endl;
  82.  
  83.  
  84.      cout<<"Podaj zmienna ktora chcesz znalesc"<<endl;
  85.      cin>>variable;
  86.     cout<<"Wyszukiwanie binarne liczby"<<endl;
  87.     wyszukiwanie_binarne(tab,variable);
  88.  
  89.     cout<<endl;
  90.  
  91.     cout<<"Wyszukiwanie interpolacyjne liczby"<<endl;
  92.     wyszukiwanie_interpolacyjne(tab,variable);
  93.  
  94.    
  95.  
  96.     system("PAUSE");
  97.     return 0;
  98. }
Advertisement
Add Comment
Please, Sign In to add comment