Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.79
Ryabchik
18 / 18 / 1
Регистрация: 09.01.2013
Сообщений: 161
#1

Как вернуться к началу функции? - C++

09.01.2013, 16:55. Просмотров 2275. Ответов 4
Метки нет (Все метки)

сем доброго времени суток. Подскажите, как сделать так, чтобы при одном из условий функция начиналась с начала. Break прерывает и идет дальше, а как вернуться к началу? Заранее спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.01.2013, 16:55     Как вернуться к началу функции?
Посмотрите здесь:
Как вернуться к началу компиляции после выполнения какой либо функции? C++
C++ Как вернуться в главное меню!
Как вернуться в начало программы??? C++
C++ Как вернуться обратно в выбор
C++ Как через goto вернуться назад, чтоб еще раз проверить функцию?
Вернуться в начало файла C++
Вернуться в определенное место программы C++
Не могу вернуться к тексту программы C++
Арканоид. Вернуться в исходное состояние. C++
Возврат к началу switch C++
Найти ближайшую к началу координат точку C++
C++ Найти какая из точек ближе к началу координат

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
09.01.2013, 16:59     Как вернуться к началу функции? #2
Рекурсия. Функция может саму себя вызвать.

Добавлено через 36 секунд
Только параметры должны изменяться, чтобы не было бесконечного цикла
extenup
54 / 54 / 3
Регистрация: 12.11.2011
Сообщений: 109
09.01.2013, 18:01     Как вернуться к началу функции? #3
Есть много способов. Как уже было сказано можно воспользоваться рекурсией. Так-же можно использовать оператор goto чтобы вернуться к началу функции (не рекомендуется т.к. нарушает логику программы). Ну и на мой взгляд лучше в таких случаях использовать цикл.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// Рекурсия
int i;
void func()
{
    cout << i << endl;
    i++;
    if(i < 10)
    {
        func();
        return;
    }
 
    cout << "next code" << endl;
}
 
// goto
int i;
void func()
{
m:
    cout << i << endl;
    i++;
    if(i < 10) goto m;
 
    cout << "next code" << endl;
}
 
// Цикл
int i;
void func()
{
    while(i < 10)
    {
        cout << i << endl;
        i++;
    }
    cout << "next code" << endl;
}
Croessmah
Модератор
Эксперт CЭксперт С++
13045 / 7308 / 814
Регистрация: 27.09.2012
Сообщений: 18,041
Записей в блоге: 3
Завершенные тесты: 1
09.01.2013, 18:23     Как вернуться к началу функции? #4
Цитата Сообщение от Ryabchik Посмотреть сообщение
Подскажите, как сделать так, чтобы при одном из условий функция начиналась с начала
можно необходимую часть заключить в
C++
1
2
3
do{
// тут повторяющийся код
}while(/*условие*/);
Цитата Сообщение от v.a.l.i.d Посмотреть сообщение
Рекурсия. Функция может саму себя вызвать.
Вызывать!=вернуться к началу

Добавлено через 1 минуту
Цитата Сообщение от Ryabchik Посмотреть сообщение
Break прерывает и идет дальше, а как вернуться к началу?
не совсем понятный момент. Можете код выложить, а то что-то становиться совсем не ясно что Вам нужно?
zener
22 / 9 / 1
Регистрация: 16.10.2010
Сообщений: 115
09.01.2013, 18:26     Как вернуться к началу функции? #5
Цитата Сообщение от extenup Посмотреть сообщение
Так-же можно использовать оператор goto чтобы вернуться к началу функции
Вообще не рекомендуется.. Использование goto является правилом дурного тона
Yandex
Объявления
09.01.2013, 18:26     Как вернуться к началу функции?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru