• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wyszukiwanie połówkowe, nie wiem gdzie jest błąd

0 głosów
40 wizyt
pytanie zadane 9 stycznia w C i C++ przez Marina1997 Nowicjusz (120 p.)
zmienione kategorie 10 stycznia przez Arkadiusz Waluk

Wyskakuje mi błąd :identifier "t" is undefined;   't': undeclared identifier. Nie wiem co w tym kodzie jest nie tak i jak to poprawić.

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <iostream>

using namespace std;
#define MAX 100
int HalfFind (int t[], int nSize, int x);

int main()
{
cout << "Podaj liczbe szukana: ";
int x;
cin >> x;

int ix = HalfFind (t, MAX, x);
if (ix == -1)
{
    cout << "elementu" << x << " nie ma w tablicy\n";
}
else
{
    cout << "element " << x << "wystepuje pod indeksem: " << ix;
    cout << "\n\n";
    return 0;
}
}

int HalfFind(int t[], int nSize, int x)
{
        int l = 0;
        int p = nSize - 1;
    do
    {
        int m = (1 + p) / 2;
        if (x < t[m])
            p = m + 1;
        else if (x > t[m])
            l = m + 1;
        else return m;

    } while (l <= p);

    return -1;
}

 

komentarz 10 stycznia przez Arkadiusz Waluk Mędrzec (168,760 p.)

Pamiętaj na przyszłość, że kod na forum wstawiamy w przeznaczony do tego bloczek code. Jeśli pytanie dotyczy programowania należy też wybrać kategorię odpowiadającą danemu językowi.

1 odpowiedź

0 głosów
odpowiedź 9 stycznia przez .kassad Gaduła (3,040 p.)
int ix = HalfFind (t, MAX, x);

wywołujesz funkcję podając t jako parametr, mimo że wcześniej nigdzie t nie zostało zdefiniowane.

Podobne pytania

0 głosów
3 odpowiedzi 105 wizyt
pytanie zadane 4 lipca 2016 w C i C++ przez jaciekrece Nowicjusz (170 p.)
0 głosów
2 odpowiedzi 71 wizyt
+1 głos
1 odpowiedź 82 wizyt
pytanie zadane 16 lutego 2016 w C i C++ przez Rafał Michalik Nowicjusz (210 p.)
...