Джесс Либерти - Освой самостоятельно С++ за 21 день.

Здесь есть возможность читать онлайн «Джесс Либерти - Освой самостоятельно С++ за 21 день.» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Освой самостоятельно С++ за 21 день.: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Освой самостоятельно С++ за 21 день.»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

В книге широко представлены возможности новейшей версии программного продукта Microsoft Visual C++. Подробно описаны средства и подходы программирования современных профессиональных приложений. Материалы книги дополнены многочисленными демонстрационными программами, в процессе разработки которых максимально используются возможности программных инструментов Microsoft Visual Studio. Особое внимание уделено новинкам версии 6.0 и новейшим технологиям объектно-ориентированного программирования, включая использование библиотеки MFC и шаблонов классов, а также создание связанных списков. Отдельное занятие посвящено вопросам объектно-ориентированного анализа и проектирования приложений. Подробно рассмотрены все средства и подходы конструирования собственных пользовательских классов.
Книга рассчитана на широкий круг читателей, интересующихся современными проблемами программирования.

Освой самостоятельно С++ за 21 день. — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Освой самостоятельно С++ за 21 день.», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Сложные конструкции с if

Нет никаких ограничений на использование любых операторов в блоках выражений в конструкции if-else, в том числе на использование дополнительных операторов if и else. В этом случае будет получена вложенная конструкция из нескольких операторов if:

if (условие1)

{

if (условие2)

выражение1;

else

{

if (условиеЗ) выражение2;

else

выражениеЗ;

}

}

else

выражение4;

Смысл этой конструкции из нескольких операторов if можно расшифровать так: если условие1 истинно и условие2 истинно, выполните выражение1. Если условие1 истинно, а условие2 — нет, тогда проверьте условиеЗ и, если оно истинно, выполните выражение2. Если условие1 истинно, а условие2 и условиеЗ — нет, тогда выполните выражениеЗ. Наконец, если условие1 ложно, выполните выражение4. Да, вложенные операторы if могут кого угодно запутать!

Пример использования такой сложной конструкции с несколькими операторами if показан в листинге 4.7.

Листинг 4.7. Сложные конструкции с вложенными операторами if

1: // Листинг 4.7. Пример сложной конструкции с

2: // вложенными операторами if

3: #include

4: int main()

5: {

6: // Запрашиваем два числа

7: // Присваиваем числа переменным bigNumber и littleNumber

8: // Если значение bigNumber больше значения littleNumber,

9: // проверяем, делится ли большее число на меньшее без остатка

10: // Если да, проверяем, не равны ли они друг другу

11:

12: int firstNumber, secondNumber;

13: cout << "Enter two numbers.\nFirst: ";

14: cin >> firstNumber;

15: cout << "\nSecond: ";

16: cin >> secondNumber;

17: cout << "\n\n";

18:

19: if (firstNumber >= secondNumber)

20: {

21: if ( (firstNumber % secondNumber) == 0) // evenly divisible?

22: {

23: if (firstNumber == secondNumber)

24: cout << "They are the same!\n";

25: else

26: cout << "They are evenly divisible!\n";

27: }

28: else

29: cout << "They are not evenly divisible!\n";

30: }

31: else

32: cout << "Hey! The second one is larger!\n";

33: return 0;

34: }

Результат:

Eriter two numbers.

First: 10

Second: 2

They are evenly divisible!

Анализ:Сначала пользователю предлагается ввести два числа (по очереди), затем эти числа сравниваются. С помощью первого оператора if (в строке 19) мы хотим убедиться в том, что первое число больше или равно второму. Если мы убеждаемся в обратном, то выполняется выражение после оператора else, представленного в строке 31.

Если первое сравнение возвращает true, то выполняется блок инструкций, начинающийся в строке 20, где с помощью второго оператора if в строке 21 проверяется предположение, что первое число делится на второе без остатка (т.е. с остатком, равным нулю). Если это предположение подтверждается, то первое число либо кратно второму, либо они вообще равны друг другу. Оператор if в строке 23 проверяет версию о равенстве чисел, а затем на экран выводится сообщение, уведомляющее о выявленном соотношении.

Если оператор if в строке 21 возвращает значение false, то выполняется оператор else в строке 28.

Использование фигурных скобок для вложенных операторов if

Фигурные скобки можно не использовать в конструкциях с оператором if, если эта конструкция состоит только из одного выполняемого выражения. Это справедливо и в случае вложения нескольких операторов if, как показано ниже:

if (x>у) // если x больше у

if (x

x = у; // тогда присваиваем x значение у

Однако при создании сложных вложенных конструкций без использования фигурных скобок бывает трудно разобраться, какое выражение какому оператору if принадлежит.

Не забывайте, что пробелы и отступы делают программу понятнее для программиста, но никак не влияют на работу компилятора. Даже если вы покажете с помощью отступа, что данный оператор else относится к конструкции этого оператора if, компилятор может с вами не согласиться. Данная проблема иллюстрируется в листинге 4.8.

Листинг 4.8. Пример использования фигурных скобок для правильного сопоставления операторов else и if

1: // Листинг 4.8. Пример использования фигурных скобок

2: // в конструкциях с вложенными операторами if

3: #include

4: int main()

5: {

6: int x;

7: cout << "Enter а number less than 10 or greater than 100: ";

8: cin >> x;

9: cout << "\n";

10:

11: if (x >= 10)

12: if (x > 100)

13: cout << "More than 100, Thanks!\n";

14: else // к какому оператору if относится этот оператор

15: cout << "Less than 10, Thanks!\n";

16:

17: return 0;

18: }

Результат:

Enter a number less than 10 or greater than 100

Less than 10, Thanks!

Анализ:Программа запрашивает ввод числа меньше 10 или больше 100 и должна проверить введенное значение на соответствие выдвинутому требованию, а затем вывести сообщение.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Освой самостоятельно С++ за 21 день.»

Представляем Вашему вниманию похожие книги на «Освой самостоятельно С++ за 21 день.» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Освой самостоятельно С++ за 21 день.»

Обсуждение, отзывы о книге «Освой самостоятельно С++ за 21 день.» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x