Основные теоретические положения. Институт математики, физики и информатики

ЧЕРЕПОВЕЦКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

Институт математики, физики и информатики

 
 


Кафедра программного обеспечения ЭВМ

 

 

УКАЗАНИЯ К ЛАБОРАТОРНЫМ РАБОТАМ

ПО ДИСЦИПЛИНЕ

«ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ

ПРОГРАММИРОВАНИЕ»

 

Часть 1

Учебно-методическое пособие

Направление: 654600 – информатика и вычислительная техника;

Специальность: 220400 – программное обеспечение вычислительной техники и автоматизированных систем

 

 

Череповец

Указания к выполнению лабораторных работ по дисциплине «Объектно-ориентированное программирование». Ч. 1: Учеб.-метод. пособие. Череповец: ЧГУ, 2002. 27 с.

 

 

Рассмотрено на заседании кафедры программного обеспечения ЭВМ, протокол № 3 от 25.10.02 г.

Одобрено редакционно-издательской комиссией Института математики, физики и информатики ЧГУ, протокол № 22 от 22.10.01 г.

 

 

Составители: Е.В. Ершов – канд. техн. наук, доцент; Л.Н. Виноградова

 

Рецензенты: А.Н. Зуев – канд. техн. наук, доцент (ЧГУ);

Е.В. Королева – канд. техн. наук (ЦНСА ОАО «Северсталь»)

 

Научный редактор: Е.В. Ершов – канд. техн. наук, доцент

 

© Череповецкий государственный университет, 2003

 

Введение

 

Данное учебно-методическое пособие (часть 1) содержит описание и порядок выполнения пяти лабораторных работ по дисциплине "Объектно-ориентированное программирование" и предназначено для изучения и практического освоения синтаксиса, базовых понятий и конструкций языка объектно-ориентированного программирования (ООП) С++, а также методов и средств технологии ООП – одной из основных и эффективных для создания программного обеспечения и являющейся базовой для подготовки профессиональных программистов.

В пособии рассматриваются следующие темы: «Программирование функций» (4 ч), «Обработка массивов» (4 ч), «Обработка структурированных типов данных» (4 ч), «Разработка абстрактных типов данных» (4 ч), «Создание и уничтожение объектов класса» (4 ч).

Задания выполняются с использованием системы визуального программирования С++ Builder.

Каждую лабораторную работу необходимо выполнять в следующем порядке:

1. Разработать алгоритм решения в соответствии с заданием.

2. Составить программу решения задачи.

3. Осуществить отладку и тестирование программы.

Отчет по лабораторной работе должен содержать:

1. Постановку задачи и исходные данные.

2. Блок-схему алгоритма решения задачи.

3. Программу на языке С++.

4. Протокол тестирования программы.

При выполнении лабораторных работ в компьютерном классе необходимо соблюдать общие правила техники безопасности.

 

 

Р а з д е л I

ПРОГРАММИРОВАНИЕ ФУНКЦИЙ

Цель работы: изучить синтаксис и семантику определения, объявления и вызова функций, приобрести практические навыки передачи параметров функции, освоить механизмы возврата значений, изучить классы памяти и области видимости.

Основные теоретические положения

Вызов функции

Функции служат для реализации метода пошагового уточнения (функциональной декомпозиции) – разбиения задачи на ряд подзадач и последующего кодирования на языке программирования.

Программа на языке С++ состоит, как правило, из одной или нескольких функций. Выполнение программы начинается с функции main(). Вызов функции осуществляется при выполнении программы тогда, когда встречается имя функции. Управление передается функции для решения конкретной задачи и затем возвращается в вызывающее окружение (calling environment).

 

Например:

 

main()

{ - - -

- - -

y = sin(x); //вызов стандартной функции из math.h

a = my_function(b); //вызов функции пользователя

ptintf («Эта процедура»); //вызов стандартной функции-процедуры из stdio.h

- - -

- - -

}

 

Определение функции

Определение функции (function definition) – это код, реализующий то, что выполняет функция:

возвращаемый_тип имя_функции (список _объявлений _формальных _ параметров) //заголовок функции

{

операторы_тела_функции

}

 

Здесь возвращаемый_тип – это тип значения, возвращаемого функцией; имя_функции – идентификатор;

список_объявлений_формальных_параметров – это идентификаторы, которые получат значения фактических параметров, передаваемых функции при ее вызове, могут использоваться в теле функции и являются локальными для нее переменными;

операторы_тела_функции – перечень операторов, заключенных в фигурные скобки.

 

Например: int my_function (int p)

{return (-p);} //функция смены знака целого аргумента