- •1. Основы алгоритмизации и программирования
- •1.1. Этапы подготовки и решения задач на эвм
- •1.2. Алгоритмы и способы их описания Понятие алгоритма
- •Способы описания алгоритмов
- •Структурные схемы алгоритмов
- •1.3. Компиляция и интерпретация программ
- •1.4. Стили программирования
- •Процедурное программирование
- •Функциональное программирование
- •Логическое программирование
- •Объектно-ориентированное программирование
- •2.1. Пример готовой программы.
- •2.2. Структура основной программы
- •2.3. Алфавит языка
- •2.4. Константы и переменные Константы
- •Переменные
- •Примеры записи имен переменных
- •2.5. Арифметические выражения
- •Примеры вычисления арифметических выражений
- •Стандартные функции
- •Примеры программирования арифметических выражений
- •Контрольные задания
- •1. Составить описания для заданных переменных
- •2.6. Линейные вычислительные процессы
- •Оператор присваивания
- •Странные операторы присваивания
- •Операторы ввода-вывода
- •Операторы ввода исходных данных с клавиатуры
- •Потоковый ввод данных числового типа
- •Форматный ввод
- •Операторы вывода данных на экран Потоковый вывод
- •Форматный вывод
- •Контрольные задания
- •Выполнить оператор присваивания
- •2.7. Разветвляющиеся вычислительные процессы
- •Логические выражения
- •Порядок выполнения операций в логических выражениях
- •Условные операторы
- •Короткий условный оператор
- •Полный условный оператор
- •If (логическое выражение) p1; else p2;
- •Вложенные структуры условных операторов
- •Оператор выбора
- •Контрольные задания
- •2.8. Циклические вычислительные процессы
- •Операторы цикла с условием
- •Оператор цикла do...While
- •Оператор цикла с параметром
- •2.9. Базовые алгоритмы
- •Задача 1. Алгоритм организации счетчика
- •Задача 2. Алгоритм накопления суммы
- •Задача 3. Алгоритм накопления произведения
- •Задача 4. Алгоритм поиска минимального члена последовательности
- •Задача 5. Табулирование функции (или кратные циклы)
- •Задача 6. Вычисление сумм последовательностей
- •2.10. Указатели и массивы Указатели
- •Понятие массива
- •Общий вид описания массива
- •Одномерные массивы
- •Описание одномерного массива
- •Индексированные переменные
- •Ввод-вывод одномерных массивов
- •Обработка одномерных массивов
- •Задача 1. Организация счетчика
- •Задача 2. Накопление суммы и произведения
- •Задача 3. Поиск минимального и максимального элементов массива
- •Двухмерные массивы
- •Описание двухмерного массива
- •Ввод-вывод двухмерного массива
- •Обработка матриц
- •2.11. Подпрограммы Структура сложной программы
- •Функции
- •Общий вид описания функции
- •Обращение к функции
- •Пример программы с функцией
- •Механизм замены параметров
- •Параметры-массивы в функциях
- •Рекурсия
- •Примеры программирования задач с использованием подпрограмм
- •Задача 1
- •2.12. Текстовые данные
- •Символьный тип данных
- •Ввод-вывод символьных данных
- •Обработка символьных данных
- •Ввод-вывод строковых данных
- •Обработка строковых данных
- •Стандартные функции обработки строк
- •Сравнение строк:
- •Сцепление строк
- •Определение длины строки
- •Копирование строк
- •Поиск символа в стоке
- •Пример программы для задачи с текстовыми данными
- •Контрольные задания
- •2.13. Динамическое выделение памяти
- •Структуры данных Понятие структуры
- •Обработка структур
- •Пример задачи с использованием структурированных данных
- •2.15. Файлы данных Понятие файла
- •Работа с файлами
- •Открытие файла
- •Обработка открытого файла
- •Закрытие файла
- •Функции ввода/вывода
- •Работа с текстовыми файлами
- •Обработка бинарных файлов
- •Контрольные задания
- •Заключение
Заключение
Система программирования С++ - мощная профессиональная система, предназначенная для решения задач любой сложности - от создания простых программ вычислительного характера до разработки сложных систем управления базами данных. Данное учебное пособие рассчитано на изучение основных приемов программирования и отладки программ на языке С++.
В главах учебного пособия рассматривается язык С++. Изложение ведется от простого к сложному, что позволяет обучающимся решать простейшие вычислительные задачи и постепенно переходить к разработке программ с использованием текстовых и файловых данных. В учебном пособии приводится достаточное число различных примеров программирования, облегчающих понимание отдельных разделов языка С++.
Оглавление
1. Основы алгоритмизации и программирования 5
1.1. Этапы подготовки и решения задач на ЭВМ 5
1.2. Алгоритмы и способы их описания 7
Понятие алгоритма 7
Способы описания алгоритмов 8
Структурные схемы алгоритмов 12
1.3. Компиляция и интерпретация программ 15
1.4. Стили программирования 16
Процедурное программирование 17
Функциональное программирование 20
Логическое программирование 21
Объектно-ориентированное программирование 22
2. Основы алгоритмического языка С++ 25
2.1. Пример готовой программы. 25
2.2. Структура основной программы 27
Простейшая программа на С++ 27
2.3. Алфавит языка 29
2.4. Константы и переменные 29
Константы 29
Переменные 30
2.5. Арифметические выражения 32
Стандартные функции 33
Контрольные задания 35
2.6. Линейные вычислительные процессы 39
Оператор присваивания 39
Странные операторы присваивания 41
Операторы ввода-вывода 41
Контрольные задания 49
2.7. Разветвляющиеся вычислительные процессы 53
Логические выражения 53
Условные операторы 55
Контрольные задания 65
2.8. Циклические вычислительные процессы 67
Операторы цикла с условием 67
Оператор цикла с параметром 71
2.9. Базовые алгоритмы 73
Задача 1. Алгоритм организации счетчика 73
Задача 2. Алгоритм накопления суммы 74
Задача 3. Алгоритм накопления произведения 75
Задача 4. Алгоритм поиска минимального члена последовательности 75
Задача 5. Табулирование функции (или кратные циклы) 77
Задача 6. Вычисление сумм последовательностей 78
2.10. Указатели и массивы 80
Указатели 80
Понятие массива 83
Общий вид описания массива 83
Одномерные массивы 84
Описание одномерного массива 84
Индексированные переменные 84
Ввод-вывод одномерных массивов 85
Обработка одномерных массивов 86
Двухмерные массивы 90
Описание двухмерного массива 91
Ввод-вывод двухмерного массива 91
Обработка матриц 92
2.11. Подпрограммы 99
Структура сложной программы 99
Функции 100
Параметры-массивы в функциях 105
Рекурсия 106
Примеры программирования задач с использованием подпрограмм 107
2.12. Текстовые данные 111
Символьный тип данных 111
Строки 114
Контрольные задания 119
2.13. Динамическое выделение памяти 121
Оператор C++ new позволяет вашей программе выделять память динамически во время выполнения. Если вашей программе больше не нужна выделенная память, она должна ее освободить, используя оператор delete. Для освобождения памяти с использованием оператора delete вы просто указываете этому оператору указатель на данную область памяти, как показано ниже: 124
Пример 5. 125
2.14. Структуры данных 127
Понятие структуры 127
Обработка структур 129
Пример задачи с использованием структурированных данных 131
2.15. Файлы данных 132
Функции ввода/вывода 135
Работа с текстовыми файлами 140
Обработка бинарных файлов 142
Контрольные задания 143
Заключение 145
СПИСОК ДОПОЛНИТЕЛЬНОЙ ЛИТЕРАТУРЫ
Голицына О.Л. Основы алгоритмизации и программирования. М.: Форум. 2008.- 431с.
М. С. Эпштейн. Практикум по программированию на языке С. М.: Академия, 2007, -102с.
Г. Шилдт. Полный справочник по C++. М.: Вильямс, 2006,- 217с.
Стенли Липпман, Жози Лажойе, Барбара Му. Вводный курса стандартного языка C++. М.: Вильямс, 2007,- 892с.
http://256bit.ru/informat/index11.htm