Witam.
Nie działa mi wyszukiwanie naturalne liczb w tablicy, nawet jeżeli ta liczba jest, program zwraca, że nie znalazł.
Czy pomógłby ktoś z tym kodem?
#define MAX 100
#include <iostream>
#include <cstdlib>
#include <ctime> // biblioteka do srand
#include <stdlib.h>
using namespace std;
int tab[MAX];
int x=0;
int rep=0,temp=0, a=0;
int min=0, i=0,j=0,k=0, h=0, licz_porow=0, licz_zam=0;
int liczba=0;
float wynik;
int wybor=0;
int wyszukiwanie_naturalne(int i, int x, int tab[])
{
cout << "Jakiego elementu szukasz?" << endl;
cin >> x;
for (int i=0; i<MAX;i++)
{
if (x==tab[i])
{
cout << "Dany element " << x << " jest rowny " << i << endl;
system("pause"); // dzialaj!!!!!
return(i);
}
{
if (x<tab[i])
{
cout << "Brak danego elementu" << endl;
system("pause"); // dzialaj!!!!!
return(0);
}
}
}
}
int main()
{
/*
cout << "Tablica wejsciowa posortowana: " << endl;
for (int i=0; i<MAX;i++)
{
tab[i]=liczba;
liczba++;
}
for (int i=0;i<MAX;i++)
{
cout << tab[i] << "\t";
if((i+1)%5==0)
cout << endl;
}
*/
cout << "Tablica wejsciowa losowa:" << endl;
for (int i=0;i<MAX;i++)
{
tab[i]=(rand()%(MAX)) +0;
}
for (int i=0;i<MAX;i++)
{
cout << tab[i] << "\t";
if((i+1)%5==0)
cout << endl;
}
cout << endl;
cout << endl;
cout << "Jaka metode wybierasz? \n1. Wyszukiwanie naturalne \n2. Wyszukiwanie binarne" << endl;
cin >> wybor;
switch(wybor)
{
case 1:
wyszukiwanie_naturalne(i,x,tab);
break;
default:
cout << "Brak" << endl;
break;
}
cout << "Licznik porownan: " << licz_porow << endl;
cout << "Licznik zamian: " << licz_zam << endl;
system("pause");
return 0;
}