
- •Предисловие
- •Раздел I. Основы алгоритмизации
- •1. Общие понятия
- •2. Классификация алгоритмов
- •2.1. Циклы с известным числом повторений
- •2.2. Циклы с неизвестным числом повторений
- •2.3. Сложные циклы
- •2.4. Алгоритмы с массивами
- •2.5. Алгоритмы вычисления степенных полиномов
- •2.6. Алгоритмы нахождения наибольшего (наименьшего) из множества значений
- •Раздел II. Элементы программирования на языке С++
- •3. Из истории развития языка С++
- •4. Структура программы на языке С++
- •5. Ввод и вывод в С++
- •6. Основные элементы языка С++
- •6.1. Алфавит
- •6.2. Идентификаторы
- •6.3. Переменные и константы
- •7. Операции и выражения
- •7.1. Выражение и его интерпретация
- •7.2. Арифметические операции
- •7.3. Логические операции и операции отношения
- •7.4. Операция условия
- •7.5. Операция присваивания
- •7.6. Операция sizeof
- •7.7. Преобразование типов
- •7.8. Порядок выполнения операций
- •8. Операторы управления
- •8.1. Общие сведения
- •8.2. Оператор if
- •8.3. Операторы switch
- •8.4. Оператор while
- •8.5. Оператор for
- •8.6. Операторы break и continue
- •9. Функции
- •9.1.Описание функции
- •9.2. Правила работы с функциями
- •9.3. Передача параметров
- •10. Указатели
- •10.1. Назначение указателей
- •10.3. Выражения и арифметические действия с указателями
- •11. Массивы
- •11.1. Одномерные массивы
- •11.2. Многомерные массивы
- •11.3. Примеры использования массивов
- •11.4. Массивы и функции
- •11.5. Массивы и указатели
- •12.Форматирование ввода-вывода
- •12.2. Неформатированный ввод - вывод
- •13. Область видимости переменных
- •14. Работа с файлами
- •15. Структуры
- •16. Классы
- •16.1. Определение класса
- •16.2. Доступ к элементам класса и их область действия
- •16.3. Отделение интерфейса от реализации
- •16.4. Управление доступом к элементам
- •16.5. Дружественные функции и дружественные классы
- •Библиографический список
- •Предметный указатель
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ
Государственное образовательное учреждение высшего профессионального образования
Северо-Западный государственный заочный технический университет
В. Л. Макаров
Программирование и основы алгоритмизации
Утверждено редакционно-издательским советом университета в качестве учебного пособия
Санкт-Петербург
2003
2
УДК 62.52/07
Макаров В.Л. Программирование и основы алгоритмизации: Учеб.пособие. - СПб.: СЗТУ, 2003. – 110 с.
Пособие соответствует требованиям государственного образовательного стандарта высшего профессионального образования по направлению подготовки дипломированных специалистов 651900 –“Автоматизация и управление”
(специальность 210100 –“Управление и информатика в технических системах”
) и направлению подготовки бакалавров 550200 –“Автоматизация и управле-
ние”.
Учебное пособие предназначено для студентов, изучающих дисциплину “Программирование и основы алгоритмизации”. В пособии рассматривается принятая классификация вычислительных алгоритмов, приводятся примеры составления алгоритмов для различных прикладных задач и изложены основы программирования на языке С++.
Рецензенты: А.Ю.Дорогов, канд.техн.наук., доц. кафедры АПУ СанктПе- тербургского государственного электротехнического университета; Р.Р.Хамидуллин, канд.техн.наук., доц. кафедры КТ и ПО Северо-Западного заочного государственного университета.
© Северо-Западный государственный заочный технический университет, 2003
3
Предисловие
Цель данного учебного пособия – помочь студенту в изучении основ алгоритмизации и элементов программирования на языке С++. В первом разделе пособия наряду с изложением общих понятий приводится принятая классификация вычислительных алгоритмов. Рассматриваются линейные, разветвляющиеся и циклические алгоритмы, а также приводятся примеры составления алгоритмов для различных прикладных задач. Второй раздел пособия связан с изучением основ программирования на языке С++. Методика изложения учебного материала в обоих разделах пособия в основном связана с разборкой примеров, а не голой формулировкой правил. Примеры, приведенные в учебном пособии, в их большей части являются законченными реальными программами, а не отдельными фрагментами. Все примеры были проверены непосредственно с текста пособия, где они напечатаны в виде, пригодном для ввода в машину. При работе над учебным пособием использовался компилятор, входящий в состав интегрированной среды разработки Borland C++ 3.1. Хотя это не самый свежий продукт, однако, для обучения основам С++, благодаря своей надежности и сравнительно малому объему требуемой памяти, подходит как нельзя лучше. К тому же выбор транслятора абсолютно не принципиален. Следует лишь иметь в виду, что выполнение примеров в других инструментальных средах в ряде случаев может привести к иным результатам.
При написании пособия автор сосредоточил усилия на подборе необходимого материала из различных опубликованных источников и изложении его в наиболее доступной форме на базе многочисленных примеров.
В заключение автор выражает признательность рецензентам и редактору за участие в подготовке данного учебного пособия.