Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.09.2017, 20:26   #1
FirrtTrojan
Пользователь
 
Регистрация: 25.03.2017
Сообщений: 13
Вопрос Логика цикла for

Сегодня темой лекции были циклы, на дом задали сделать пару эксперементов с циклами.
Эксперементируя с циклом for я заметил, что логика описанная моим преподом, и то как на самом деле работает цикл не совпадают!
Описание от преподователя было следующим: "for(инициализация переменной;условие;если это условие верно то значение увеличивается на 1)". Сейчас же, я обнаружил что инкремент не срабатывает, а сразу переходит в тело цикла, а на 2 этапе срабатывает. Объясните, в чем дело? Может я что-то не так делаю?
d.PNG
FirrtTrojan вне форума Ответить с цитированием
Старый 25.09.2017, 20:31   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ну видимо просто плохо сформулировал объяснение.

Да, он увеличивает только после итерации.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 26.09.2017, 09:57   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от FirrtTrojan Посмотреть сообщение
Описание от преподователя было следующим: "for(инициализация переменной;условие;если это условие верно то значение увеличивается на 1)"
ну и где в этом объяснение выполнение тела цикла? и где повторяющаяся часть?

цикл for выполняется примерно так.
1. выполняется блок иницилизации (на самом деле, там может быть несколько переменных).
2. осуществляется проверка условия. Если условие не выполняется - переход на следующий после цикла оператор (т.е. выход из цикла) - переход на п.6
3. <тело цикла>
4. выполняется 3-й блок (изменение переменной(-ых) цикла)
5. переход на пункт 2 (зацикливание)
6. следующий после цикла оператор программы
Serge_Bliznykov вне форума Ответить с цитированием
Старый 28.09.2017, 01:06   #4
FirrtTrojan
Пользователь
 
Регистрация: 25.03.2017
Сообщений: 13
По умолчанию

Спасибо большое!
FirrtTrojan вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль выдает Ошибку "Нельзя изменять значение переменной цикла внутри этого цикла" Тырин Артем Помощь студентам 14 17.01.2016 17:53
Математическая логика (Элементы теории множеств, Логика и исчисление высказываний) sash_ok.83 Фриланс 0 12.06.2012 20:43
Логика предикатов (мат логика 2 задачи) Deathcube Помощь студентам 0 27.02.2012 18:28
алгоритмы нахождения эйлерова цикла и гамильтонова цикла в графе. Necare Помощь студентам 0 15.11.2011 18:26
Переход от цикла к циклу не выходя из цикла (без multithreading) Qousio Общие вопросы C/C++ 2 16.05.2009 09:27