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

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

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

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

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

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

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

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

Интервал:

Закладка:

Сделать

Как определить, какой из операторов, if/else или switch, лучше использовать в конкретной ситуации?

Если приходится использовать более двух вложений операторов if, то лучше воспользоваться конструкцией с оператором switch.

Как выбрать между операторами while и do...while?

Если тело цикла должно выполняться хотя бы один раз, используйте цикл do...while. Во всех остальных случаях используйте оператор while.

Как выбрать между операторами while и for?

В тех случаях, когда переменная счетчика еще не инициализирована и ее значение изменяется после каждой итерации цикла на постоянную величину, используйте оператор for. В остальных случаях предпочтительнее while.

В каких случаях лучше использовать рекурсию, а в каких итерацию?

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

Какой из операторов, for(;;) или while(true) работает эффективнее?

Существенного различия между ними нет.

Коллоквиум

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

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

1. Можно ли в цикле for инициализировать сразу несколько переменных-счетчиков?

2. Почему следует избегать использование оператора goto?

3. Можно ли с помощью оператора for организовать цикл, тело которого не будет выполняться?

4. Можно ли организовать цикл while внутри цикла for?

5. Можно ли организовать цикл, который никогда не завершится? Приведите пример.

6. Что происходит при запуске бесконечного цикла?

Упражнения

1. Каким будет значение переменной x после завершения цикла for (int x = 0; x < 100; x++)?

2. Создайте вложенный цикл for, заполняющий нулями массив размером 10x10.

3. Организуйте цикл for, счетчик которого изменяется от 100 до 200 с шагом 2.

4. Организуйте цикл while, счетчик которого изменяется от 100 до 200 с шагом 2.

5. Организуйте цикл do...while, счетчик которого изменяется от 100 до 200 с шагом 2.

6. Жучки: найдите ошибку в приведенном фрагменте программы.

int counter = 0;

while (counter < 10)

{

cout << "counter: " << counter;

}

7. Жучки: найдите ошибку в приведенном фрагменте программы.

for(int counter = 0; counter < 10; counter++);

cout << counter << " ";

8. Жучки: найдите ошибку в приведенном фрагменте программы.

int counter = 100;

while (counter < 10)

{

cout << "counter: " << counter;

counter--;

}

9. Жучки: найдите ошибку в приведенном фрагменте программы.

cout << "Enter а number between 0 and 5: ";

cin >> theNumber;

switch (theNumber)

{

case 0:

doZero();

case 1: // идем дальше

case 2: // идем дальше

case 3: // идем дальше

case 4: // идем дальше

case 5:

doOneToFive();

break;

default:

doDefault();

break;

}

Подведение итогов

Листинг. Итоги первой недели

1: #include

2: intintboolfalsetrue

3: enum CHOICE { DrawRect = 1, GetArea,

4: GetPerim, ChangeDimensions, Quit} ;

5: // Объявление класса Rectangle

6: class Rectangle

7: {

8: public:

9: // constructors

10: Rectangle(int width, int height);

11: ~Rectangle();

12:

13: // Методы доступа

14: int GetHeight() const { return itsHeight; }

15: int GetWidth() const { return itsWidth; }

16: int GetArea() const { return itsHeight * itsWidth; }

17: int GetPerim() const { return 2*itsHeight + 2*itsWidth; }

18: void SetSize(int newWidth, int newHeight);

19:

20: // Прочие методы

21:

22:

23: private:

24: int itsWidth;

25: int itsHeight;

26: };

27:

28: // Выполнение методов класса

29: void Rectangle::SetSize(int newWidth, int newHeight)

30: {

31: itsWidth = newWidth;

32: itsHeight = newHeight;

33: }

34:

35:

36: Rectangle::Rectangle(lnt width, int height)

37: {

38: itsWidth = width;

39: itsHeight = height;

40: }

41:

42: Rectangle::~Rectangle() { }

43:

44: int DoMenu();

45: void DoDrawRect(Rectangle);

46: void DoGetArea(Rectangle);

47: void DoGetPerim(Rectangle);

48:

49: int main ()

50: {

51: // Инициализация объекта rectangle значением 30,5

52: Rectangle theRect(30,5);

53:

54: int choice = DrawRect;

55: int fQuit = false;

56:

57: while (!fQuit)

58: {

59: choice = DoMenu();

60: if (choice < DrawRect || choice > Quit)

61: {

62: cout << "\nInvalid Choice, please try again.\n\n"

63: continue;

64: }

65: switch (choice)

66: {

67: case DrawRect:

68: DoDrawRect(theRect);

69: break;

70: case GetArea:

71: DoGetArea(theRect);

72: break;

73: case GetPerim:

74: DoGetPerim(theRect);

75: break;

76: case ChangeDimensions:

77: int newLength, newWidth;

78: cout << "\nNew width: ";

79: cin >> newWidth;

80: cout << "New height: ";

81: cin >> newLength;

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

Интервал:

Закладка:

Сделать

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

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


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

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

x