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

Сравнение символов в операторе if - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ В качестве f(x) использовать по выбору: sin(x), х , ех http://www.cyberforum.ru/cpp-beginners/thread940412.html
C++ Анализ и разбиение символьной строки на слова Не могу разобраться, что делает цикл в коде. Пожалуйста, помогите. #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <ctype.h> #include <string.h> using namespace std; bool getWord( char* theString, char* word, int& wordOffset ); http://www.cyberforum.ru/cpp-beginners/thread940391.html
C++ ввод данных cin >>
Приветствую! #include <iostream> using namespace std; int main() {setlocale (LC_ALL,""); int qt; float cost;
C++ Функция-друга шаблона класса с не типовым параметром
Доброго времени суток. Около полугода изучаю C++, и у меня возник не большой вопрос. Опуская некоторые подробности, предположим, что у меня есть шаблон класса с одним типовым и одним не типовым параметрами. К примеру вот: #include <iostream> using std::cout; using std::endl; using std::ostream;
C++ Классы C++, коллекции и сортировка http://www.cyberforum.ru/cpp-beginners/thread940351.html
Есть небольшое задание. Не могу понять как это все организировать, особенно с коллекциями и сортировкой. "ЗАДАЧА. Построить три класса (базовый и 2 потомки), описывающих некоторых работников с почасовой оплатой (один из потомков) и фиксированной оплатой (второй потомок). Описать в базовом классе абстрактный метод для расчета среднемесячной заработной платы. Для «повременщиков» формула для...
C++ Известна длина окружности. Найти площадь круга, ограниченного этой окружностью. Известна длина окружности. Найти площадь круга, ограниченного этой окружностью. подробнее

Показать сообщение отдельно
19n1ght
2 / 2 / 0
Регистрация: 13.02.2013
Сообщений: 15
21.08.2013, 02:05     Сравнение символов в операторе if
Цитата Сообщение от fingolfin_ Посмотреть сообщение
получается, "do{}" - это оператор цикла, а "while()" - это условие его продолжения?
While в данном случае это условие выхода.

do while это один из операторов цикла (их три - while, do while и for).
while сперва проверяет условие (в скобках), затем выполняет тело цикла. Do while сперва выполняет тело цикла, затем проверяет условие. do while предпочтительнее в тех случаях, когда нам необходимо, чтобы тело цикла было выполнено как минимум один раз. Если используем while и условие ложное, то тело цикла не будет выполнено никогда.

Если перевести на псевдокод, то получится примерно следующее:

Выполнить тело do ( key = _getch(); cout << key << endl; ). Проверить не равен ли key ESCAPE. Если не равен, выполнить тело цикла do еще раз. Снова проверить. И так до тех пор, пока key не будет равен ESCAPE. Как только key становится равным ESCAPE, управление передается на следующую строку после while (в данном случае программа останавливается, так как после while ничего нет).

Можно использовать просто while, но в таком случае нам нужно инициализировать key при создании (иначе в условии while мы будем использовать "пустую" переменную key, что приведет к ошибке на этапе компиляции).
C++
1
2
3
4
5
6
int key = 0;
    while (key != ESCAPE)
    {
        key = _getch();
        cout << key << endl;
    }
В теории, пока я не введу <ESC>, программа не продолжит работу?
Верно. Пока Вы не нажмете ESCAPE, Вы не выйдете из цикла do while.
 
Текущее время: 03:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru