5 / 5 / 0
Регистрация: 28.06.2013
Сообщений: 116
|
||||||
1 | ||||||
Не завершается метод23.12.2013, 17:52. Показов 791. Ответов 15
Метки нет (Все метки)
По идее оператор return; должен завершить метод Turning(). Но через брейкпоинты я посмотрел что после выполнения return; он продолжает не даже с начала метода и не с начала цикла, а с FindMinimum(); !!!! Почему так?
Добавлено через 24 минуты Блин, ребята, срочно нужно
0
|
23.12.2013, 17:52 | |
Ответы с готовыми решениями:
15
Созданный объект Array<char> удаляется, как только метод convert завершается Асинхронный метод долго (никогда?) не завершается Батник и процесс: то завершается, но не завершается СЛАУ. Метод обратной матрицы, метод Гаусса, метод Крамера, метод Зейделя |
Комп_Оратор)
|
|
23.12.2013, 18:02 | 2 |
Gomg, Вы не показываете код
и приходится напрягать экстрасенсорику. Предположу, что либо FindMinimum() рекурсивна, либо она взаимно рекурсивна с Turning(), т.е. где-то опять её вызывает. Хотя циклиться в этом разе долго не должно. Стек ограничен. Либо просто зацикливается по другим причинам, перечислять которые места не хватит. Например весело прыгает вокруг минимума. Это нормально, скоро Новый Год!
0
|
36 / 20 / 4
Регистрация: 28.01.2013
Сообщений: 37
|
|
23.12.2013, 18:03 | 3 |
В этом куске кода мало что можно рассмотреть
Ф-ия CheckSurround() что возвращает?В случае возврата не нулевого значения выполнится ваша фи-я Turning() ,иначе просто выкенет из цикла. Вместо return попробуйте операторы Break и Continue Он верно начинает,если вас не выкидывает из цикла,он начнет выполнять действия с изменения счетчика,затем выполнять ф-ию FindMinimum()
0
|
5 / 5 / 0
Регистрация: 28.06.2013
Сообщений: 116
|
|
23.12.2013, 18:17 [ТС] | 4 |
в FindMinimum() не вызывается ни единой функции. CheckSurround() возвращает bool. return; выполняется. Проверял через брейкпоинт. Но после return; он переходит опять к FindMinimum(), хотя должен просто завершить функцию и продолжить выполнять код из main()
Добавлено через 1 минуту мне нужно немедленное завершение функции Добавлено через 3 минуты надпись FindMinimum() во всем коде встречается 2 раза при объявлении функции и здесь Добавлено через 1 минуту да и после break; туда же возвращается
1
|
36 / 20 / 4
Регистрация: 28.01.2013
Сообщений: 37
|
|
23.12.2013, 18:20 | 5 |
может выложите весь код?а не его кусок
0
|
5 / 5 / 0
Регистрация: 28.06.2013
Сообщений: 116
|
||||||
23.12.2013, 18:22 [ТС] | 6 | |||||
0
|
36 / 20 / 4
Регистрация: 28.01.2013
Сообщений: 37
|
|
23.12.2013, 18:32 | 8 |
точно
рекурсивный вызов ведь
0
|
5 / 5 / 0
Регистрация: 28.06.2013
Сообщений: 116
|
|
23.12.2013, 18:38 [ТС] | 9 |
так это как бы если он завершает returnом из функции то код должен идти дальше где я её первый раз вызвал. Да и причем тут рекурсия, т.к. он продолжает не с функции и даже не с цикла, а с непонятно какой строчки которая в коде всего 2 раза. при объявлении и тут. По сути мне надо чтобы он продолжил с 118 строки Draw()
Добавлено через 1 минуту да то же самое. Это по сути просто тот же код усложненный Добавлено через 4 минуты а я кажется понял. Тут он рекурсируется и return завершает рекурсируемый метод? Тогда как мне закрыть все рекурсировки разом?
0
|
5 / 5 / 0
Регистрация: 28.06.2013
Сообщений: 116
|
|
23.12.2013, 18:42 [ТС] | 11 |
на других форумах что-то пишут про throw. Может так?
Добавлено через 1 минуту ммм... не совсем понял почему на 13
0
|
5 / 5 / 0
Регистрация: 28.06.2013
Сообщений: 116
|
|
23.12.2013, 18:51 [ТС] | 13 |
так что мне делать то? как мне завершить все рекурсированные функции разом?
0
|
5 / 5 / 0
Регистрация: 28.06.2013
Сообщений: 116
|
|
23.12.2013, 19:13 [ТС] | 15 |
мне нужна рекурсия
Добавлено через 11 минут короче у меня задача написать программу чтобы считало количество решений хода конем(задача о ходе коня). Я решил делать по методу Варнсдорфа Добавлено через 20 секунд тут без рекурсии кажется не обойтись
0
|
1130 / 789 / 232
Регистрация: 12.04.2010
Сообщений: 2,012
|
||||||
23.12.2013, 20:16 | 16 | |||||
0
|
23.12.2013, 20:16 | |
23.12.2013, 20:16 | |
Помогаю со студенческими работами здесь
16
Цикл не завершается Не завершается цикл for Не завершается программа BackgroundWorker не завершается Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |