Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Zadanie1.cpp : Defines the entry point for the console application.
- //
- #include "stdafx.h"
- #include <iostream>
- #include <ctime>
- using namespace std;
- int main()
- {
- int a[10000];
- int x,n;
- int k;
- int licznik,licznik1,licznik2;
- licznik =0;
- licznik1=0;
- licznik2=0;
- int i = 0;
- int g;
- //srand(unsigned(time(0)));
- cin >> n; // Ile ma wypelnic
- for(int i=0;i<n;i++)
- {
- a[i] = i*2;
- cout << " "<< a[i];
- }
- cout << endl;
- cin >> x;
- while(a[i]!=x && i<n)
- {
- i= i+1;
- licznik = licznik +2;
- }
- if(a[i]!=x)
- {
- cout<<"1)Brak elementu o wartosci "<< x <<" w ciagu"<<endl;
- licznik = licznik + 1;
- }
- else
- {
- cout << "1)Element o wartosci "<< x <<" znajduje sie na pozycji "<< i <<" w ciagu"<<endl;
- licznik = licznik + 1;
- }
- a[n] = x;
- i = 0;
- while(a[i]!=x)
- {
- i = i+ 1;
- licznik1= licznik1 +1;
- }
- if(i >= n)
- {
- cout << "2)Nie ma elementu o wartosci "<<x<<" w ciagu" <<endl;
- licznik1 = licznik1 + 1;
- }
- else
- {
- cout << "2)Element o wartosci "<< x <<" znajduje sie na pozycji "<<i<<" w ciagu"<<endl;
- }
- int h = 0;
- g = n;
- do{
- k=(h+g) /2;
- if(x>a[k])
- {
- h = k+1;
- licznik2 = licznik2 +1;
- }
- else
- {
- g = k-1;
- licznik2 = licznik2 +1;
- }
- licznik2 = licznik2 + 2;
- }while(a[k]==x || h>g);
- if(a[k]!= x)
- {
- cout << "3)nie ma elementu o wartosci "<< x<<" w ciagu"<<endl;
- licznik2= licznik2 + 1;
- }
- else
- {
- cout <<"3)element o wartosci "<<x<<" znajduje sie na pozycji "<<k<<endl;
- }
- cout << "Sposob nr 1 : "<<licznik <<endl;
- cout << "Sposob nr 2 : "<<licznik1 <<endl;
- cout << "Sposob nr 3 : "<<licznik2 <<endl;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement