napisałem następującą funkcje znajdowania najkrótszej drogi za pomocą BFS niestety wywala następujący błąd:
175 C:\Dev-Cpp\proba.cpp non-lvalue in assignment
chodzi o linijkę:
while(!V[x]=1)
void path(int FS[][5], int V[], int i, int n, int x)
{
int dist=0;
queue<int> kolejka;
V[x]=0;
//wyzeruj wszystkie punkty reprezentujące odwiedzone wierzchołki
for (int j=0; j<n; j++) { V[j]=0; }
//wstawia do kolejki pierwszy element
kolejka.push(i);
int s;
//wykonuj dopóki V[x] nieodwiedzony
while(!V[x]=1)
{
s=kolejka.front();
kolejka.pop();
//oznacza ten wierzchołek jako odwiedzony
V[s] = 1;
//wykonuj pętlę tyle razy ile jest wierzchołków
for(int k=0; k<n; k++)
{
dist=dist+1;
//jeśli punkt sąsiedztwa ustawiony na 1
//to znaleziono połączenie między wierzchołkami
if (FS[s][k]!=0)
{
//sprawdź kolejny wierzchołek jeśli nie był dotąd odwiedzany
if(V[k]==0)
{
//oznacz jako odwiedzony
V[k]=1;
//wstaw do kolejki
kolejka.push(k);
}
}
}
}
cout<<dist<<endl;
}