#include int najdi(int, int [], int); int main(void) { int res; int t[20] = {1, 1, 3, 4, 4, 5, 7, 8, 9, 9, 13, 14, 16, 17, 17, 21, 22, 24, 25, 30}; res = najdi(6, t, 20); if (res == -1) printf("Stevila %d ni v tabeli!\n", 6); else printf("Stevilo %d se nahaja na %d-tem mestu!\n", 6, res); res = najdi(21, t, 20); if (res == -1) printf("Stevila %d ni v tabeli!\n", 21); else printf("Stevilo %d se nahaja na %d. mestu!\n", 21, res); return 0; } int najdi(int e, int t[], int len) { // iskanje po urejeni tabeli z bisekcijo // e ... iskani element // t[] ... urejena tabela po kateri i"s"cemo // len ... dol"zina tabele // funkcija vrne indeks, na katerem se nahaja // element oziroma -1, "ce elementa ni v tabeli int a = 0, b = len-1, c; while (a <= b) { c = (a + b) / 2; if (t[c] == e) return c; else if (t[c] < e) a = c+1; else b = c-1; } return -1; }