Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Программирование на C++

Покупка
Артикул: 816361.01.99
Доступ онлайн
319 ₽
В корзину
Книга рассчитана на тех, кто нуждается в понятном и доступном введении в язык C++, и может использоваться как самоучитель. Она также рассказывает о компьютерах и алгоритмическом решении задач, поэтому может служить в качестве первого учебника программирования. Авторы убедительно показывают, что темы, когда-то считавшиеся слишком сложными для вводного курса по С++ и объектно-ориентированному программированию, можно успешно объяснять на ранних стадиях обучения. Книга является удачным выбором для первого знакомства с С++. Материал излагается в строгой, но доступной для начинающего программиста форме. Авторы приводят многочисленные откомпилированные и проверенные упражнения с ответами. Издание предназначено для пользователей ПК (от начального до среднего уровня), начинающих программистов, школьников, студентов и преподавателей информатики. Издание предназначено для пользователей ПК (от начального до среднего уровня), начинающих программистов, школьников, студентов и преподавателей информатики.
Дейл, Н. Программирование на C++ : учебник / Н. Дейл, Ч. Уимз, М. Хедингтон ; пер. с англ. А. С. Цемахмана. - 2-е изд. - Москва : ДМК Пресс, 2023. - 674 с. - (Учебник). - ISBN 978-5-89818-342-4. - Текст : электронный. - URL: https://znanium.com/catalog/product/2102629 (дата обращения: 28.11.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
Нейл Дейл, Чип Уимз, Марк Хедингтон

Программирование на С++

Programming in C++

Nell Dale

University of Texas, Austin

Chip Weems

University of Massachusetts, Amherst

Mark Headington 
University of Wisconsin – LaCrosse

JONES AND BARTLETT PUBLISHERS 

Sudbury, Massachusetts

Boston toronto London singapore

Программирование на C++

Нелл Дейл

Техасский университет, Остин

Чип Уимз

Массачусетский университет, Амхерст

Марк Хедингтон
Университет ВисконсинаЛа Кросс

Серия «Учебник»

Москва 2023

2-е издание, электронное

ББК 32.973-018.1
Д94

Д94
Дейл, Нелл.

Программирование на C++ / Н. Дейл, Ч. Уимз, М. Хедингтон ; пер. с англ. 
А. С. Цемахмана. — 2-е изд., эл. — 1 файл pdf : 674 с. — Москва : ДМК Пресс, 
2023. — (Учебник). — Систем. требования: Adobe Reader XI либо Adobe Digital 
Editions 4.5 ; экран 10". — Текст : электронный.

ISBN 978-5-89818-342-4
Книга рассчитана на тех, кто нуждается в понятном и доступном введении в язык C++, 
и может использоваться как самоучитель. Она также рассказывает о компьютерах и алгоритмическом решении задач, поэтому может служить в качестве первого учебника программирования. Авторы убедительно показывают, что темы, когда-то считавшиеся слишком 
сложными для вводного курса по С++ и объектно-ориентированному программированию, 
можно успешно объяснять на ранних стадиях обучения.
Книга является удачным выбором для первого знакомства с С++. Материал излагается 
в строгой, но доступной для начинающего программиста форме. Авторы приводят многочисленные откомпилированные и проверенные упражнения с ответами. 
Издание предназначено для пользователей ПК (от начального до среднего уровня), 
начинающих программистов, школьников, студентов и преподавателей информатики.

ББК 32.973-018.1

Электронное издание на основе печатного издания: Программирование на C++ / Н. Дейл, Ч. Уимз, 
М. Хедингтон ; пер. с англ. А. С. Цемахмана. — Москва : ДМК Пресс, 2007. — 672 с. — (Учебник). — 
ISBN 5-93700-008-0. — Текст : непосредственный.

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

В соответствии со ст. 1299 и 1301 ГК РФ при устранении ограничений, установленных техническими средствами защиты авторских 
прав, правообладатель вправе требовать от нарушителя возмещения убытков или выплаты компенсации.

ISBN 978-5-89818-342-4
©  Перевод на русский язык, 
оформление. ДМК Пресс

Содержание

Предисловие   .........................................................................................................15

Глава I. Введение в программирование и решение задач   ..........21
Введение в программирование  .......................................................................22
Как пишутся программы ..........................................................................................22
Что такое язык программирования   ...............................................................27
Устройство компьютера   .....................................................................................30
Методика решения задач   .................................................................................35
Задавайте вопросы .................................................................................................36
Находите привычные ориентиры ............................................................................36
Решайте по аналогии ..............................................................................................36
Анализ цели и средств ............................................................................................37
«Разделяй и властвуй» ............................................................................................38
Метод «строительных плит» ...................................................................................38
Слияние решений ....................................................................................................38
Мысленный барьер: страх сделать первый шаг .....................................................40
Алгоритмическое решение задачи ........................................................................40
Итоги главы   ............................................................................................................40

Глава II. Синтаксис, семантика и разработка 
программ на C++   ..............................................................................42
Элементы программ на С++   ..............................................................................43
Структура программы .............................................................................................43
Синтаксис и семантика ...........................................................................................45
Синтаксические шаблоны .......................................................................................47

Называем элементы программ: идентификаторы .................................................49
Данные и их типы.....................................................................................................50
Описываем элементы программы: объявления ......................................................54
Начинаем действовать: выполняемые выражения .................................................58
Сверх минимума: добавляем комментарии к программе .....................................64
Построение программы   .....................................................................................65
Блоки или составные выражения ............................................................................67
Препроцессор С++ ..................................................................................................69
Пример программирования. «Автопробег»   ................................................70
Советы по тестированию и отладке   ...............................................................73
Итоги главы   ............................................................................................................73
Быстрая самопроверка ...........................................................................................74
Упражнения для подготовки к экзамену .................................................................76
Упражнения для разминки ......................................................................................80
Задачи по программированию ..............................................................................81

Глава III. Арифметические выражения, 

вызов функций и вывод   ..............................................................83
Арифметические выражения.............................................................................84
Правила приоритета ...............................................................................................84
Неявное приведение и явное преобразование типов ...........................................85
Вызов функций и библиотечные функции  ...................................................88
Функции, возвращающие значение ......................................................................88
Библиотечные функции ...........................................................................................90
Функции типа void ...................................................................................................91
Форматирование вывода  ..................................................................................92
Вставка пустых строк ...............................................................................................93
Вставка пробелов внутри строки ............................................................................94
Манипуляторы .........................................................................................................95
Пример программирования. «Измерения по карте»  ............................. 100
Советы по тестированию и отладке  ............................................................. 103
Итоги главы  .......................................................................................................... 103
Быстрая самопроверка ........................................................................................ 104
Упражнения для подготовки к экзамену .............................................................. 105
Упражнения для разминки ................................................................................... 108
Задачи по программированию ........................................................................... 110

Глава IV. Программный ввод и процесс разработки программного обеспечения   .................................................................... 112
Ввод данных в программу   ............................................................................. 113
Потоки ввода и операция извлечения ................................................................. 113
Маркер считывания и символ новой строки ....................................................... 116
Считывание символьных данных с помощью get ................................................ 117

Программирование на С++

Пропуск символов с помощью ignore .................................................................. 120

Интерактивный вводвывод ............................................................................ 121
Неинтерактивный вводвывод ....................................................................... 122
Файловый вводвывод ..................................................................................... 123

Что такое файл ..................................................................................................... 123
Использование файлов ........................................................................................ 124
Пример программы с использованием файлов .................................................. 127

Ошибка ввода ..................................................................................................... 128
Разработка программного обеспечения  ................................................... 130
Функциональная декомпозиция   ................................................................. 130

Программные модули........................................................................................... 132

Объектноориентированная разработка ................................................... 133
Пример программирования. «Средневзвешенное значение 
экзаменационных оценок»   ........................................................................... 136
Тестирование и отладка   ................................................................................. 139

Советы по тестированию и отладке .................................................................... 141

Итоги главы ........................................................................................................... 141

Быстрая самопроверка ........................................................................................ 142
Упражнения для подготовки к экзамену .............................................................. 143
Упражнения для разминки ................................................................................... 145
Задачи по программированию ........................................................................... 147

Глава V.  Управляющие структуры: условия, логические выра
жения, выбор   ................................................................................. 149

Поток управления .............................................................................................. 150

Выбор .................................................................................................................... 150

Условия и логические выражения ................................................................. 151

Логические выражения ........................................................................................ 151
Приоритет операций ............................................................................................ 158
Операции сравнения и типы с плавающей точкой ............................................. 160

Условный оператор............................................................................................ 160

Условный оператор в форме IfThenElse ............................................................ 160
Применение блоков в условном операторе ....................................................... 162
Условный оператор в форме IfThen .................................................................... 163
Одна распространенная ошибка ........................................................................ 165

Вложенные условные операторы   ............................................................... 165

Висячее else ........................................................................................................... 168

Проверка состояния потока вводавывода ............................................... 169
Пример программирования. «Результат экзамена» .............................. 172
Тестирование и отладка ................................................................................... 175

Этап решения задачи: сквозной контроль алгоритма ....................................... 175
Этап реализации .................................................................................................. 178
Автоматическая проверка при компиляции и выполнении ................................ 182

Содержание

Советы по тестированию и отладке .................................................................... 182

Итоги главы ........................................................................................................... 184

Быстрая самопроверка ........................................................................................ 185
Упражнения для подготовки к экзамену .............................................................. 186
Упражнения для разминки ................................................................................... 189
Задачи по программированию ........................................................................... 192

Глава VI. Циклы ................................................................................................... 195

Оператор While ................................................................................................... 196
Этапы выполнения цикла................................................................................. 197
Циклы с While  ...................................................................................................... 198

Циклы, управляемые счетчиком ........................................................................... 198
Циклы, управляемые событием............................................................................ 199
Циклические подзадачи ....................................................................................... 202

Как проектировать циклы ............................................................................... 205

Проектирование потока управления  ................................................................. 205
Проектирование процесса внутри цикла ........................................................... 206
Выход из цикла  .................................................................................................... 207

Вложенная логика ............................................................................................. 207

Проектирование вложенных циклов ................................................................... 209

Пример программирования. «Средний доход мужчин и женщин» .. 210
Тестирование и отладка  .................................................................................. 214

Методика проверки циклов ................................................................................. 214
Советы по тестированию и отладке .................................................................... 215

Итоги главы ........................................................................................................... 216

Быстрая самопроверка ........................................................................................ 217
Упражнения для подготовки к экзамену .............................................................. 218
Упражнения для разминки ................................................................................... 221
Задачи по программированию ........................................................................... 222

Глава VII. Функции  ............................................................................................ 224

Функциональная декомпозиция и функции типа void .......................... 225

Запись модулей как функций типа void .............................................................. 225

Синтаксис и семантика функций типа void ................................................. 228

Вызов функции ...................................................................................................... 228
Описания и объявления функций ........................................................................ 229
Локальные переменные ....................................................................................... 231
Оператор return .................................................................................................... 232
Файлы заголовков ................................................................................................ 233

Параметры ............................................................................................................ 233

Параметры, передаваемые по значению ........................................................... 235
Параметры, передаваемые по ссылке ................................................................ 235

Разработка функций ......................................................................................... 238

Запись утверждений в виде комментариев ......................................................... 239

Программирование на С++

Документирование направления потока данных ............................................... 241

Пример программирования. «Сравнение продаж  
в мебельных магазинах» ................................................................................. 244
Тестирование и отладка ................................................................................... 250

Библиотечная функция assert ............................................................................... 251
Советы по тестированию и отладке .................................................................... 253

Итоги главы  .......................................................................................................... 254

Быстрая самопроверка   ....................................................................................... 255
Упражнения для подготовки к экзамену .............................................................. 256
Упражнения для разминки ................................................................................... 261
Задачи по программированию ........................................................................... 263

Глава VIII. Область и время действия ..................................................... 267

Область действия и время жизни ................................................................... 268

Область действия идентификаторов ................................................................... 268
Правила области действия ................................................................................... 270
Объявления и описания переменных .................................................................. 274
Время жизни переменной .................................................................................... 275

Разработка интерфейса ................................................................................... 278

Побочные эффекты ............................................................................................... 278
Глобальные константы .......................................................................................... 279

Функции, возвращающие значение  ........................................................... 280

Логические функции ............................................................................................ 283
Проектирование интерфейса функций, возвращающих значение .................. 284
Когда применяют функции, возвращающие значение ...................................... 285

Пример программирования. «Вес и балансировка самолета» ........... 286
Тестирование и отладка ................................................................................... 294
Заглушки и драйверы ....................................................................................... 294

Советы по тестированию и отладке .................................................................... 295

Итоги главы  .......................................................................................................... 296

Быстрая самопроверка ........................................................................................ 297
Упражнения для подготовки к экзамену .............................................................. 299
Упражнения для разминки ................................................................................... 302
Задачи по программированию ........................................................................... 304

Глава IX. Дополнительные управляющие структуры   .................. 307

Оператор Switch   ................................................................................................. 308
Оператор DoWhile ............................................................................................ 311
Оператор For ........................................................................................................ 313
Инструкции break и continue ........................................................................... 315
Критерии выбора циклической структуры ................................................ 318
Пример программирования. «Среднемесячное  
количество осадков» ........................................................................................... 318

Содержание

Тестирование и отладка ................................................................................... 322

Советы по тестированию и отладке .................................................................... 323

Итоги главы ........................................................................................................... 323

Быстрая самопроверка ........................................................................................ 323
Упражнения для подготовки к экзамену .............................................................. 324
Упражнения для разминки ................................................................................... 326
Задачи по программированию ........................................................................... 328

Глава X. Простые типы данных   ................................................................ 331

Встроенные простые типы  ............................................................................... 332

Целые типы ............................................................................................................ 334
Типы с плавающей точкой .................................................................................... 335

Дополнительные операторы С++ .................................................................. 336

Операторы присваивания и инструкция присваивания ..................................... 337
Операторы инкремента и декремента ................................................................ 338
Поразрядные операторы ..................................................................................... 339
Оператор преобразования ................................................................................. 339
Оператор sizeof .................................................................................................... 340
Оператор ?: .......................................................................................................... 340
Приоритет операторов ........................................................................................ 340

Обработка символьных данных .................................................................... 341

Наборы символов ................................................................................................. 342

Константы типа char в языке С++ ................................................................... 343

Методы программирования ................................................................................. 344

Подробнее о числах с плавающей точкой ................................................. 347

Представление чисел с плавающей точкой ........................................................ 347
Арифметика чисел с плавающей точкой ............................................................ 348

Простые типы, определенные пользователем ......................................... 352

Перечисляемые типы ............................................................................................ 352
Именованные и анонимные типы данных ........................................................... 357
Файлы заголовков, написанные пользователем ................................................ 359

Подробнее о приведении типов .................................................................... 359

Приведение типов в арифметических инструкциях  
и инструкциях сравнения ..................................................................................... 360
Приведение типов при присваивании, передаче параметров  
и возвращении значения функции ...................................................................... 360

Пример програмирования. «Напоминание о дне рождения» ............ 362
Тестирование и отладка  .................................................................................. 367

Данные с плавающей точкой ............................................................................... 367
Борьба с ошибками ввода ................................................................................... 367
Советы по тестированию и отладке .................................................................... 368

Итоги главы ........................................................................................................... 369

Программирование на С++

Доступ онлайн
319 ₽
В корзину