Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Оператор цикла while .

Артур Комаров Ученик (207), закрыт 1 неделю назад
Считается ли тело цикла оператором или тело цикла уже не входит в обозначение оператора?И если да то считается ли это оператор while или это отдельный оператор ?
Лучший ответ
Андрей Высший разум (427818) 1 месяц назад
Английскому "statement" в русской программисткой терминологии соответствует слово "оператор". Так что, да: тело оператора while обязано состоять из единственного оператора. И этот вложенный в while оператор является составной частью оператора while.

А вот английскому "operator" в русском языке соответствует термин "операция".

Но расплодившиеся, как грибы после дождя, невежественные "переводчики с английского" русскую IT-терминологию никогда не изучали и лепят "инструкции" вместо "операторов", "операторы" вместо "операций", "корутины" вместо "сопрогамм".
ivan866_zМудрец (18203) 1 месяц назад
свидетели
 ДЛЯ (Ж=1 ДО 10) {
ИДТИ НА 50
}
подъехали
Андрей Высший разум (427818) ivan866_z, Сочувствую.
Остальные ответы
Гуру Ответов Гуру (4323) 1 месяц назад
да и отдельный оператор
ivan866_z Мудрец (18203) 1 месяц назад
while - это не оператор, а flow control statement (утверждение контроля)
как определить оператор? операторы бывают унарные, бинарные и тринарные; операторы оперируют своими операндами - т.е. берется вход1, вход2 и из них делается выход (в случае с бинарным оператором)
утверждения же не оперируют ничем, они только перенаправляют ход программы по другому пути ("под капотом" это означает передачу указателя на другую ячейку памяти в кэше команд процессора)

примеры
все что в круглых скобках - это выражение; конкретно true - это значение булевской переменной; (условное) выражение для утверждения while состоит из булевской переменной, равной true
 while (true) {
...
}

A < 10 - это выражение, а < - это оператор в его составе
A - это вход1, 10 - это вход2, булевское выражение будет его результатом (выходом)
 while (A < 10) { 
...
}
Krab Bark Искусственный Интеллект (284023) 1 месяц назад
Оператор в C++ заканчивается символом ;
Так что тело цикла является частью оператора.
В русскоязычной литературе оператороми часто называют операции, что, конечно, неправильно и, видимо, идет от того, что в английском языке операция называется operator, а оператор называется statement.
АндрейВысший разум (427818) 1 месяц назад
Не всегда точкой с запятой: после составного оператора точка с запятой не требуется.
Krab Bark Искусственный Интеллект (284023) Андрей, но составной оператор - просто заключенная в фигурные скобки группа операторов, в каждом из которых есть своя точка с запятой. Дополнительная точка с запятой на всю группу не требуется.
ivan866_zМудрец (18203) 1 месяц назад
; разграничивает один scope ("область видимости") от другого
сами scope при этом могут, но не обязаны быть ограничены в {...}
к операторам (в правильном их понимании) он вообще не имеет отношения
операторы просто берут выражения перед и после от себя (в случае бинарных)
выражения же друг от друга отделяются при помощи ,
ivan866_zМудрец (18203) 1 месяц назад
тут ребята походу даже не знают что такое препроцессор
Похожие вопросы