Урок 2. Вывод информации на экран . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90
Объекты типа Clock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Объекты типа Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Первый этап великого похода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Урок 3. Решение проблем. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Локализация проблемы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Сообщения об ошибках . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Правила и соглашения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Часть II. Функции и выражения . . . . . . . . . . . . . . . . . . . . . . . .111
Урок 4. Функции. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Понятие функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Аргументы функций . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Заголовочные файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Область видимости . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Урок 5. Числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Числа и числовые переменные . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Арифметические операторы в простых выражениях . . . . . . . . . . . . . . . . . . . 133
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
Ввод значений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Вывод значений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Урок 6. Решение проблем с помощью функций. . . . . . . . . . . . . . . . . . . . . . 141
Возвращаемые значения функций . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Второй этап великого похода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
Правила и соглашения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Часть III. Циклы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .161
Урок 7. Повторяющиеся вычисления . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
Простые циклы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
Условия в циклах . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
Вложенные циклы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
Циклы и робот Tracer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
Урок 8. Разработка базовых циклов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Повторение с изменением . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Первый этап создания циклов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Правила и соглашения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
Урок 9. Разработка базовых приложений . . . . . . . . . . . . . . . . . . . . . . . . . . 201
Создание торгового терминала . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
Описание процесса разработки приложений . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
Часть IV. Условия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .209
Урок 10. Условные инструкции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Инструкция if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
Инструкция if . . .else . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Задание условий . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Выход из циклов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
Второй этап создания циклов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Выбор варианта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
Урок 11. Рекурсивные функции . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
Рекурсивные алгоритмы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235
Третий этап великого похода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
Урок 12. Создание небольшого проекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
Организация пользовательского интерфейса . . . . . . . . . . . . . . . . . . . . . . . . . . 244
Завершение проекта . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
Часть V. Числа . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .251
Урок 13. Операции с числовыми выражениями . . . . . . . . . . . . . . . . . . . . . 252
Обработка чисел . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Урок 14. Работа с графикой. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Графика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
Смена системы координат . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Урок 15. Создание анимаций . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
Построение графиков математических функций . . . . . . . . . . . . . . . . . . . . . . . 284
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
Создание анимации . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
Имитация пушечного ядра . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
Одновременная обработка нескольких экранных объектов . . . . . . . . . . . . . 300
Проект планетной системы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
Часть VI. Классы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .311
Урок 16. Создание и модификация классов . . . . . . . . . . . . . . . . . . . . . . . . . 312
Создание классов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
Создание нового класса объектов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
Доступ к членам класса . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
Урок 17. Производные классы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
Получение классов из существующих классов . . . . . . . . . . . . . . . . . . . . . . . . . 333
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
Урок 18. Усложнение приложений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Совершенствование торгового терминала . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
Проект имитации нескольких спутников . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 359
Часть VII. Массивы и структуры . . . . . . . . . . . . . . . . . . . . . . . .361
Урок 19. Массивы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
Работа с массивами . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 362
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
Сортировка массивов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 382
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
Урок 20. Символьные массивы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Текст в программах на С++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 388
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
Структуры . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 396
Поиск в символьном массиве . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 399
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Урок 21. Разработка приложений . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
Проект торгового терминала . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 402
Проект спутниковой системы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 412
Часть VIII. Ввод и вывод данных . . . . . . . . . . . . . . . . . . . . . . .413
Урок 22. Заголовочный файл franca.h. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
Реальное программирование на С++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
Потоки ввода/вывода С++ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 416
Форматирование . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 421
Самостоятельная практика . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
Что нового мы узнали? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 432
Урок 23. Файлы. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
Использование файлов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
Самостоятельная практика . . . . . . . . . . . . .