Mam problem, którego przyczyny nie jestem w stanie się domyślić. Robię program, który ma coś tam sobie robić. Między innymi jest to znalezienie 'cyklu' w grafie (reprezentacja: macierz sąsiedztwa). 'Cykl' piszę w '', ponieważ nie jest to tak do końca cykl z punktu widzenia matematyki - chodzi o to, żeby odwiedzić wszystkie wierzchołki i wrócić do początkowego nawet jeśli trzeba będzie do jednego wierzchołka dostać się i wrócić po tej samej krawędzi (liczba krawędzi połączonych z wierzchołkiem = 1). Szukanie tego 'cyklu' robię rekurencyjnie, a odwiedzone wierzchołki koloruję na szaro (kolor[i]=1 - szary, kolor[i]=0 - bialy, nieodwiedzony), trochę jak w DFS-ie. Algorytm daje(a raczej powinien dawać) mało optymalny cykl - to nie przeszkadza, cały projekt ma polegać właśnie na poprawianiu tego wyniku.
Tyle teorii. Teraz problem. Program po uruchomieniu wywala informacje, że brak odpowiedzi i że przestał działać. Nie wiem dlaczego, więc uruchamiam debugger i... ta dam! działa! Wszystkie zmienne są takie jak powinny być, cykl dostaje taki jakiego oczekiwałem, program kończy pomyślnie działanie. Dzieje się tak tylko przy pracy z debuggerem i ruchu linijka po linijce. Jak uruchomię normalnie program - brak odpowiedzi. Korzystam z Code Blocks 10.05. Załączam projekt, o którym mowa.
Kompletnie nie mam koncepcji w czym tkwi problem? Jak to jest możliwe, że w debuggerze działa, a bez niego już nie? Czy to może być wina środowiska, czy jednak raczej moja?
Z góry dziękuję za każdą pomoc.