Чтение онлайн

на главную - закладки

Жанры

Освой самостоятельно С++ за 21 день.

Либерти Джесс

Шрифт:

Если операторы отношений всегда возвращают значения true или false, то почему любое ненулевое значение считается истинным (true)?

Операторы отношений всегда возвращают значения true или false, но в выражениях условий можно использовать любые другие выражения, возвращающие числовые значения. Например:

if ( (x = а + b) == 35 )

Это вполне подходящее условие для выражения на языке C++. При его выполнении будет вычислено значение даже в том случае, если сумма переменных а и Ь не равна числу 35. Кроме того, обратите внимание, что переменной x в любом случае будет присвоено

значение переменных а и b.

Какое воздействие оказывают на программу символы табуляции, пробелы и символы перехода на новую строку?

Символы табуляции, пробелы и символы разрывов строк (все их часто называют символами пробелов) никак не влияют на программу, хотя могут сделать ее более читабельной.

Отрицательные числа считаются истинными или ложными?

Все числа, не равные нулю (как положительные, так и отрицательные), воспринимаются как истинные.

Коллоквиум

В этом разделе предлагаются вопросы для самоконтроля и укрепления полученных знаний и приводится несколько упражнений, которые помогут закрепить ваши практические навыки. Попытайтесь самостоятельно ответить на вопросы теста и выполнить задания, а потом сверьте полученные результаты с ответами в приложении Г. Не приступайте к изучению материала следующей главы, если для вас остались неясными хотя бы некоторые из предложенных ниже вопросов.

Контрольные вопросы

1. Что такое выражение?

2. Является ли запись x = 5 + 7 выражением? Каково его значение?

3. Каково значение выражения 201 / 4?

4. Каково значение выражения 201 % 4?

5. Если переменные myAge, а и b имеют тип int, то каковы будут их значения после выполнения выражения:

myAge = 39;

а = myAge++;

b = ++myAge;

6. Каково значение выражения 8+2*3?

7. Какая разница между выражениями if(x = 3) и if(x == 3)?

8. Будут ли следующие выражения возвращать true или false?

а) 0

б) 1

в) -1

г) x = 0

д) x == 0 // предположим, что x имеет значение 0

Упражнения

1. Напишите один оператор if, который проверяет две целочисленные переменные и присваивает переменной с большим значением меньшее значение, используя только один дополнительный оператор else.

2. Проанализируйте следующую программу. Представьте, что вы ввели три значения. Какой результат вы ожидаете получить?

1: #include <iostream.h>

2: int main

3: {

4: int a, b, с;

5: cout << "Please enter three numbers\n";

6: cout << "a: ";

7: cin >> a;

8: cout << "\nb: ";

9: cin >> b;

 10: cout << "\nc: ";

 11: cin >> c;

 12:

 13: if (c = (a-b))

 14: { cout << "a: ";

 15: cout << a:

 16: cout << "minus b: ";

 17: cout << b;

 18: cout << "equals c: ";

 19: cout << c << endl;}

 20: else

 21: cout << "a-b does not equal c: " << endl;

 22: return 0;

 23: }

3. Введите

программу из упражнения 2; скомпилируйте, скомпонуйте и запустите ее на выполнение. Введите числа 20, 10 и 50. Вы получили результат, который и ожидали? Почему нет?

4. Проанализируйте эту программу и спрогнозируйте результат:

1: #include <iostream.h>

2: int main

3: {

4: int а = 1, Ь = 1, с;

5: if (с = (a-b))

6: cout << "The value of с is: " << с;

7: return 0;

8: }

5. Введите, скомпилируйте, скомпонуйте и запустите на выполнение программу из упражнения 4. Каков был результат? Почему?

День 5-й. Функции

Несмотря на то что при объектно-ориентированном программировании внимание акцентируется не на функциях, а на объектах, функции тем не менее остаются центральным компонентом любой программы. Итак, сегодня вы узнаете:

• Что такое функция и из чего она состоит

• Как объявлять и определять функции

• Как передавать параметры функциям

• Как возвращать значение функции

Что такое функция

Функция по своей сути — это подпрограмма, которая может манипулировать данными и возвращать некоторое значение. Каждая программа C++ имеет по крайней мере одну функцию main, которая при запуске программы вызывается автоматически. Функция main может вызывать другие функции, те, в свою очередь, могут вызывать следующие и т.д.

Каждая функция обладает собственным именем, и, когда оно встречается в программе, управление переходит к телу данной функции. Этот процесс называется вызовом функции (или обращением к функции). По возвращении из функции выполнение программы возобновляется со строки, следующей после вызова функции. Такая схема выполнения программы показана на рис. 5.1.

Хорошо разработанные функции должны выполнять конкретную и вполне понятую задачу. Сложные задачи следует "разбивать" на несколько более простых, достаточно легко реализуемых с помощью отдельных функций, которые затем могут вызываться по очереди.

Различают два вида функций: определяемые пользователем (нестандартные) и встроенные. Встроенные функции являются составной частью пакета компилятора и предоставляются фирмой-изготовителем. Нестандартные функции создаются самим программистом.

Рис. 5.1. Когда программа вызывает функцию, управление переходит к телу функции, а затем выполнение программы возобновляется со стро­ки, следующей после вызова

Возвращаемые значения, параметры и аргументы

Функции могут возвращать значения. После обращения к функции она может выполнить некоторые действия, а затем в качестве результата своей работы послать назад некоторое значение. Оно называется возвращаемым значением, причем тип этого значения обязательно должен быть объявлен. Таким образом, запись

Поделиться:
Популярные книги

На границе империй. Том 9. Часть 2

INDIGO
15. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 2

Ваше Сиятельство 5

Моури Эрли
5. Ваше Сиятельство
Фантастика:
городское фэнтези
аниме
5.00
рейтинг книги
Ваше Сиятельство 5

Инженер Петра Великого 2

Гросов Виктор
2. Инженер Петра Великого
Фантастика:
попаданцы
альтернативная история
фэнтези
5.00
рейтинг книги
Инженер Петра Великого 2

Довлатов. Сонный лекарь 3

Голд Джон
3. Не вывожу
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Довлатов. Сонный лекарь 3

А жизнь так коротка!

Колычев Владимир Григорьевич
Детективы:
криминальные детективы
8.57
рейтинг книги
А жизнь так коротка!

Протокол "Наследник"

Лисина Александра
1. Гибрид
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Протокол Наследник

Темный Лекарь 3

Токсик Саша
3. Темный Лекарь
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Темный Лекарь 3

Росток

Ланцов Михаил Алексеевич
2. Хозяин дубравы
Фантастика:
попаданцы
альтернативная история
фэнтези
7.00
рейтинг книги
Росток

На границе империй. Том 3

INDIGO
3. Фортуна дама переменчивая
Фантастика:
космическая фантастика
5.63
рейтинг книги
На границе империй. Том 3

Рота Его Величества

Дроздов Анатолий Федорович
Новые герои
Фантастика:
боевая фантастика
8.55
рейтинг книги
Рота Его Величества

Мастер 7

Чащин Валерий
7. Мастер
Фантастика:
фэнтези
боевая фантастика
попаданцы
технофэнтези
аниме
5.00
рейтинг книги
Мастер 7

Отверженный VIII: Шапка Мономаха

Опсокополос Алексис
8. Отверженный
Фантастика:
городское фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Отверженный VIII: Шапка Мономаха

Кодекс Охотника. Книга XVI

Винокуров Юрий
16. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга XVI

Идеальный мир для Лекаря 7

Сапфир Олег
7. Лекарь
Фантастика:
юмористическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 7