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

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

Покупка
Новинка
Основная коллекция
Артикул: 832185.01.01
Доступ онлайн
от 496 ₽
В корзину
В учебном пособии изложены основы программирования на популярном языке высокого уровня C++. Отражены следующие темы: этапы создания программы, языки программирования, структура системы программирования, программы разветвляющейся и циклической структуры, обработка одномерных и двумерных массивов, создание пользовательских функций, указатели и ссылки, типы данных, определяемые пользователем, основы объектно-ориентированного программирования, файловый ввод-вывод, последовательные контейнеры. Для студентов, обучающихся по направлению «Информационные системы и технологии».
29
Шитов, В. Н. Программирование на примере С++ : учебное пособие / В.Н. Шитов. — Москва : ИНФРА-М, 2025. — 412 с. — (Высшее образование). — DOI 10.12737/2162065. - ISBN 978-5-16-020168-9. - Текст : электронный. - URL: https://znanium.ru/catalog/product/2162065 (дата обращения: 17.04.2025). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов
ПРОГРАММИРОВАНИЕ 
НА ПРИМЕРЕ С++
В.Н. ШИТОВ
УЧЕБНОЕ ПОСОБИЕ
Москва
ИНФРА-М
2025


УДК	004.42(075.8)
ББК	 32.973я73	
	
Ш64
Шитов В.Н.
Ш64	 	
Программирование на  примере С++ : учебное пособие / 
В.Н.  Шитов.  — Москва : ИНФРА-М, 2025.  — 412 с.  — (Высшее 
-образование). — DOI 10.12737/2162065.
ISBN 978-5-16-020168-9 (print)
ISBN 978-5-16-112703-2 (online)
В учебном пособии изложены основы программирования на популярном 
языке высокого уровня C++. Отражены следующие темы: этапы создания 
программы, языки программирования, структура системы программирования, 
программы разветвляющейся и циклической структуры, обработка одномерных и двумерных массивов, создание пользовательских функций, указатели 
и ссылки, типы данных, определяемые пользователем, основы объектно-ориентированного программирования, файловый ввод-вывод, последовательные 
контейнеры.
Для студентов, обучающихся по направлению «Информационные системы 
и технологии».
УДК 004.42(075.8)
ББК 32.973я73 
ISBN 978-5-16-020168-9 (print)
ISBN 978-5-16-112703-2 (online)
©  Шитов В.Н., 2025
©  ООО «Авангард-Букс», 2025


Предисловие
Цели дисциплины: изучение основных принципов процедурного, 
модульного и объектно-ориентированного программирования; обучение правилам и подходам к разработке и отладке программного 
обеспечения на языке программирования С++ при решении задач 
профессиональной деятельности.
Задачи дисциплины: изучение основных синтаксических конструкций языка программирования С++, правил и рекомендаций 
построения программ на указанном языке; изучение современных 
сред разработки программного обеспечения; привитие умений и навыков применения современных программных сред разработки при 
решении задач профессиональной деятельности (программных 
компонент информационных систем), их отладки и тестирования 
работоспособности.
Дисциплина «Программирование» относится к дисциплинам 
базовой части.
Для изучения дисциплины «Программирование» студент должен обладать стартовыми навыками алгоритмизации, уметь анализировать и обобщать информацию, владеть первоначальными 
навыками работы с компьютером, желательно обладать аналитическим складом мышления, что могло быть получено в результате 
изучения предметов «Информатика» и  «Математика» в  объеме 
образовательной программы средней школы.
Изучение дисциплины «Программирование» является основой 
для освоения дальнейших дисциплин, использующих ЭВМ и программирование, таких как «Объектно-ориентированное программирование», «Базы данных», «Сети и телекоммуникации» и др. 
Также она необходима при прохождении учебной и  производственной практики и выполнении выпускной квалификационной 
работы.
В результате изучения дисциплины «Программирование» студент должен:
знать
•
• современные информационные технологии и  программные 
средства, в том числе отечественного производства, при решении задач профессиональной деятельности;
•
• основные языки программирования и работы с базами данных, 
операционные системы и оболочки, современные программные 
среды разработки информационных систем и технологий;


уметь
•
• выбирать современные информационные технологии и  программные средства, в том числе отечественного производства, 
при решении задач профессиональной деятельности;
•
• применять языки программирования и работы с базами данных, 
современные программные среды разработки информационных 
систем и технологий для автоматизации бизнес-процессов, решения прикладных задач различных классов, ведения баз 
данных и информационных хранилищ;
владеть навыками
•
• применения современных информационных технологий и программных средств, в том числе отечественного производства, при 
решении задач профессиональной деятельности;
•
• программирования, отладки и тестирования прототипов программно-технических комплексов задач.


Введение в программирование
Основные понятия программирования
Программа — данные, предназначенные для управления конкретными компонентами системы обработки информации в целях 
реализации определенного алгоритма.
Программное обеспечение — совокупность программ системы обработки информации и программных документов, необходимых 
для эксплуатации этих программ;
Программирование  — научная и  практическая деятельность 
по созданию программ (ГОСТ 19781—90). Это процесс создания 
компьютерных программ с использованием определенного языка 
программирования. В программировании используется множество 
концепций и  терминологии, которые необходимо понимать для 
успешного написания программ. При программировании используются специальные понятия.
Команда — указание компьютерной программе выполнить определенное действие для решения задачи. Как правило, команда соответствует глаголу в повелительном наклонении. Например, Сложить, Сохранить, Сортировать. Команда — это описание элементарной операции на языке компьютера, которую должен выполнить 
компьютер.
Переменная  — именованное место в  памяти компьютера, где 
могут храниться определенные значения данных. Переменные используются для хранения информации и  манипулирования ею 
в программе.
Тип данных определяет, какое значение может принимать переменная и какие операции можно выполнять с этим значением. К основным типам данных относятся целые числа (int, short int, long 
int), числа с плавающей точкой (float, double, long double), строки 
(char, string) и логические значения (bool).
Операторы — символы или ключевые слова, используемые для 
выполнения операций над данными. Некоторые примеры операторов включают арифметические операторы (+, -, *, /), операторы 
сравнения (==, !=, <, >) и логические операторы (&&, ||, !).
Условные операторы позволяют программе принимать решения 
на основе определенных условий. Например, оператор if может использоваться для выполнения определенного блока кода, если 
условие выполняется, т.е. истинно, и пропускать его, если условие 
не выполняется, т.е. ложно.


Циклы могут использоваться для многократного выполнения 
блока кода. Например, цикл for выполняет заданный блок кода 
определенное количество раз, а цикл while выполняет блок кода 
до тех пор, пока условие истинно.
Функции  — блоки кода, которые можно вызывать из  других 
частей программы. Функции позволяют разбить код на  более 
мелкие и понятные фрагменты, делая программу более структурированной и простой в сопровождении.
Массив  — структура данных, которая позволяет хранить несколько значений одного типа в одной переменной. Массивы позволяют эффективно обрабатывать большие объемы данных, а доступ к элементам массива осуществляется по индексу.
Типы языков программирования
Язык программирования — язык, предназначенный для представления программ. К традиционным языкам программирования процедурного типа относят, как правило, языки для представления программ в  виде последовательности предписания 
(ГОСТ -28397—89).
Программа создается на одном из языков программирования, 
после чего она специальным образом обрабатывается (транслируется), т.е. переводится в машинный код в виде 0 и 1.
Машинный язык — язык программирования, предназначенный 
для представления программы в форме, позволяющей выполнять 
ее непосредственно техническими средствами обработки информации. Для выполнения программы на машинном языке не требуется применение трансляторов, компиляторов и интерпретаторов.
Существует несколько различных типов языков программирования, каждый из которых имеет свои особенности и назначение.
Низкоуровневые языки программирования, такие как язык ассемблера, позволяют программистам напрямую манипулировать 
компьютерным оборудованием. Это очень эффективно, поскольку 
обеспечивает прямой доступ к  регистрам и  памяти процессора, 
но требует более высокого уровня знаний и опыта.
Языки программирования высокого уровня, такие как C++, Java, 
Python, предоставляют абстракции и инструменты, которые делают 
программирование более простым и удобным для разработчиков. 
Они обеспечивают высокий уровень абстракции от аппаратного 
обеспечения, что позволяет создавать код, который легко понять 
и поддерживать.
Скриптовые языки программирования, такие как JavaScript, Perl 
и Ruby, предназначены для написания скриптов, которые выполня
ются интерпретатором. Они часто используются для автоматизации задач, манипулирования данными и создания динамических 
веб-страниц.
Функциональные языки программирования, такие как Haskell, 
Lisp и Erlang, основаны на концепции математических функций. 
Они позволяют программистам описывать вычисления в терминах 
функций и  избегать состояний переменных. Функциональные 
языки программирования имеют прочную математическую основу 
и широко используются в академических и исследовательских областях.
Объектно-ориентированные языки программирования, такие как 
C++, Basic, Java, Python, позволяют программистам писать программы в  терминах объектов, которые являются экземплярами 
классов. Эти языки поддерживают принципы наследования, полиморфизма и инкапсуляции, которые делают код модульным, гибким 
и пригодным для повторного использования.
Выбор языка программирования зависит от конкретной задачи, 
знаний, навыков, опыта и предпочтений программиста.
Кроме правил создания языка программирования необходима 
программа-транслятор, которая проверяет синтаксис программы, 
написанной на искусственном программном языке. Транслятор — 
программа или техническое средство, выполняющие трансляцию 
программы. На  транслятор обычно возлагаются функции диагностики ошибок, формирования словарей идентификаторов, выдачи для печати текстов программ и т.д.
Различают два типа трансляторов: компиляторы и интерпретаторы. Поэтому существует два класса языков программирования: 
компилируемые и интерпретируемые.
Конвертор языка — транслятор с некоторого языка на другой 
язык такого же уровня.
Компилятор  — программа или техническое средство, выполняющие компиляцию.
Интерпретатор — программа или техническое средство, выполняющие интерпретацию. Большинство интерпретаторов осуществляют интерпретацию программы путем последовательной интерпретации ее предложений.
Компилятор обрабатывает программу в  несколько приемов: 
сначала читается программный код на  наличие ошибок, затем 
про-грамма переводится в машинный код. Никаких дополнительных служебных программ для компилируемых программ не требуется. После перевода программы в машинный код нельзя внести 


никаких изменений. Существуют специальные декомпиляторы, 
которые переводят машинный код обратно в  текст программы, 
но с точки зрения законодательства это может являться нарушением, например, прав собственности на программу. Компилированные программы работают намного быстрее интерпретируемых.
Интерпретаторы переводят программу последовательно, оператор за оператором. Для интерпретируемого машинного кода требуются специальные служебные программы-интерпретаторы, так 
как без них интерпретируемая программа работать не будет.
Основные принципы программирования
Инкапсуляция — принцип объединения данных и методов, которые обрабатывают эти данные, в единый объект. Такой объект 
называется классом. Инкапсуляция позволяет скрыть внутреннюю 
реализацию объекта и предоставить только интерфейсы, необходимые для работы с ним. Это обеспечивает безопасность и упрощает 
использование объекта в программе.
Наследование — принцип, согласно которому новый класс может 
наследовать свойства и методы от существующего класса. Класс, 
от которого происходит наследование, называется родительским 
классом, или суперклассом, а  класс, от  которого наследуются 
свойства и методы, называется дочерним классом. Наследование 
создает иерархию классов и облегчает разработку и сопровождение 
программ, позволяя повторно использовать код.
Полиморфизм — принцип, согласно которому объекты разных 
классов могут иметь одни и те же методы и выполнять разные действия. Это позволяет одному и тому же коду работать с разными 
типами объектов. Полиморфизм упрощает разработку и позволяет 
создавать более гибкие и расширяемые программы.
Абстракция — принцип представления объектов и операций над 
ними в  упрощенном виде и  сокрытия деталей реализации. Абстракция позволяет сосредоточиться на основных характеристиках 
объекта и игнорировать ненужные детали. Это делает программы 
более простыми для понимания и использования.
Композиция — принцип, согласно которому объект может содержать другие объекты как части самого себя. Такие объекты называются композитами. Композиты упрощают разработку и повышают гибкость программ, позволяя создавать сложные структуры 
из простых объектов.
Эти принципы лежат в  основе объектно-ориентированного 
программирования и помогают создавать более структурированный, гибкий и понятный код.


Процесс разработки программы
Процесс разработки программного обеспечения — это ряд шагов, которые необходимо выполнить для создания практического 
про-граммного продукта. Он включает в себя анализ требований, 
проектирование, написание кода, тестирование и реализацию программы.
1.  Первым шагом в разработке программного обеспечения (ПО) 
является анализ требований. Здесь определяются цели и задачи, 
функциональные и  нефункциональные требования программы. 
Важно понять, что должна делать программа и какой функциональностью она должна обладать.
2.  На  этапе проектирования разработчик создает подробный 
план программы. Они определяют структуру программы, выбирают 
подходящие алгоритмы и структуры данных, проектируют пользовательский интерфейс и определяют взаимодействие с другими системами.
3.  После этапа проектирования разработчики приступают к написанию программного кода. Выбранный язык программирования 
и инструменты разработки используются для создания функциональности программы. Код должен легко читаться, пониматься 
и настраиваться.
4.  После написания кода необходимо провести тестирование, 
чтобы убедиться, что программа работает правильно и соответствует требованиям. Тестирование включает в себя проверку отдельных функций, модулей и программы в целом. Ошибки и недочеты исправляются до тех пор, пока программа не будет работать 
правильно.
5.  Последний этап — внедрение программы. Здесь разработчик 
устанавливает программу на целевой компьютер или сервер, задает 
необходимые параметры и проверяет ее работоспособность в реальных условиях. Если внедрение прошло успешно, то программа 
готова к использованию.
Процесс разработки ПО может быть итеративным. Это означает, 
что программа может быть повторена несколько раз, чтобы ее можно 
было улучшить и развить. Важно следовать этим этапам, чтобы создать качественный и эффективный программный продукт.
Основные инструменты программирования
При разработке ПО существует множество инструментов, помогающих программистам создавать, отлаживать код и управлять им. 
Ниже представлены некоторые основные инструменты программирования.


Интегрированная среда разработки IDE — специализированные 
программы, объединяющие в себе редактор кода, компилятор, отладчик и другие инструменты, необходимые для разработки программ. IDE предоставляют автозавершение, подсветку синтаксиса, 
проверку ошибок и другие полезные функции, облегчающие процесс написания кода.
Текстовые редакторы — простые инструменты, которые позволяют программистам создавать и редактировать текстовые файлы, 
содержащие код. Они могут использоваться для написания кода 
на различных языках программирования. К популярным текстовым редакторам относятся Sublime Text, Visual Studio Code и Atom.
Компилятор — программа, преобразующая исходный код программы, написанной на  языке программирования, в  машинный 
код, который может быть запущен на компьютере. Компиляторы 
используются для создания исполняемых файлов программ.
Отладчик — инструмент, который помогает программистам находить и исправлять ошибки в программе. Посредством отладчика 
можно выполнять код шаг за шагом, проверять значения переменных и анализировать стек вызовов. Отладчики упрощают процесс 
отладки и позволяют улучшить качество программы.
Система контроля версий (СКВ) — инструмент, позволяющий 
программистам отслеживать изменения в исходном коде программы. 
СКВ хранит историю изменений и может возвращаться к предыдущей версии кода или объединять изменения от нескольких разработчиков. К известным СКВ относятся Git и Subversion.
Библиотеки и фреймворки — коллекции готовых функций, классов и компонентов, которые помогают программистам ускорить 
разработку программ. Они предоставляют готовые решения для 
таких распространенных задач, как работа с базами данных, создание пользовательских интерфейсов и обработка сетевых запросов. Среди популярных библиотек и фреймворков — React, Angular, 
Django и jQuery.
Это лишь некоторые из основных инструментов программирования. В зависимости от языка программирования и поставленной 
задачи могут использоваться и другие инструменты.


Похожие

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