Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Информатика_ЗФ / Лабораторный практикум по программированию / Лабораторный_практикум_по программированию_2

.pdf
Скачиваний:
136
Добавлен:
22.03.2016
Размер:
646.66 Кб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ Государственное образовательное учреждение высшего профессионального образования

«Южно-Российский государственный университет экономики и сервиса» (ГОУ ВПО «ЮРГУЭС»)

Г.Д. Диброва

ЛАБОРАТОРНЫЙ

ПРАКТИКУМ ПО ПРОГРАММИРОВАНИЮ

для студентов очной и заочной форм обучения специальностей:

260704 «Технология текстильных изделий»;

260901 «Технология швейных изделий»;

260902 «Конструирование швейных изделий»;

260905 «Технология изделий из кожи»;

260906 «Конструирование изделий из кожи»;

200503 «Стандартизация и сертификация»;

260800 «Технология, конструирование изделий и материалы легкой промышленности»

В четырёх частях

Часть 2

ШАХТЫ Издательство ЮРГУЭС

2008

УДК 004.45(076) ББК 32.973-018.2я73

Д442

Рецензенты:

д.ф.н., профессор, зав. кафедрой «Информатика»

Е.Б. Ивушкина

к.э.н., доцент кафедры «Информатика»

И.Б. Кушнир

Рекомендовано к внутривузовскому изданию редакционно-издательским советом ЮРГУЭС

Диброва, Г.Д.

Д442 Лабораторный практикум по программированию: в 4 ч. / Г.Д. Диброва. – Шахты : Изд-во ЮРГУЭС, 2008. – Ч. 2. – 35 с.

В практикуме программирование алгоритмической структуры «Ветвление» оформлено в виде лабораторной работы. Подробно рассмотрены примеры программной реализации структуры «Ветвление» в среде программирования QBasic (для начинающих программистов) и в среде Visual Basic for Applications (VBA). Дано 30 вариантов заданий для выполнения лабораторной работы. Приведены вопросы для самоконтроля, даны образцы тестовых заданий и задачи для самостоятельного выполнения, требования к содержанию отчета. Практикум помогает также получить начальные навыки работы в интегрированной среде VBA. Использованные материалы отражают опыт проведения занятий по дисциплине «Информатика».

Рекомендуется для выполнения лабораторных работ по дисциплине «Информатика», а также для самостоятельного изучения темы «Алгоритмизация и программирование» в рамках дисциплины «Информатика».

Может быть полезен всем начинающим программистам, самостоятельно осваивающим алгоритмизацию и программирование.

УДК 004.45(076) ББК 32.973-018.2я73

© ГОУ ВПО «Южно-Российский государственный университет экономики и сервиса», 2008

2

СОДЕРЖАНИЕ

 

ВВЕДЕНИЕ ......................................................................................................

4

Лабораторная работа.

 

Программирование алгоритмов ветвящейся структуры (реализация

 

базовой управляющей структуры «Ветвление»)............................................

5

Задания для самостоятельной работы .........................................................

5

Задание А...................................................................................................

5

Задание В ...................................................................................................

5

Задание к работе ...........................................................................................

6

Задание А...................................................................................................

6

Задание B ...................................................................................................

7

Методические указания к выполнению задания А...................................

11

Пример выполнения задания A лабораторной работы.............................

12

Пример выполнения задания B лабораторной работы.............................

19

Задачи для самостоятельного выполнения................................................

25

Контрольные вопросы................................................................................

27

Содержание отчета .....................................................................................

28

БИБЛИОГРАФИЧЕСКИЙ СПИСОК ...........................................................

29

ПРИЛОЖЕНИЕ А. Структура «ВЕТВЛЕНИЕ» (ветвящийся

 

вычислительный процесс).............................................................................

31

ПРИЛОЖЕНИЕ Б. Операторы, реализующие структуру «ВЕТВЛЕНИЕ»..33

3

ВВЕДЕНИЕ

Практикум является продолжением пособия «Лабораторный практикум по программированию», часть 1 [10]. В нём рассматривается реализация базовой управляющей алгоритмической структуры «Ветвление» на ал-

горитмическом языке QBasic и Visual Basic for Applications (VBA).

Практикум разработан в соответствии с требованиями государственного образовательного стандарта высшего профессионального образования (ГОС ВПО) по направлению подготовки дипломированного специалиста 260704 «Технология текстильных изделий»; 260901 «Технология швейных изделий»; 260902 «Конструирование швейных изделий»; 260905 «Технология изделий из кожи»; 260906 «Конструирование изделий из кожи»; 200503 «Стандартизация и сертификация» в соответствии с учебным планом и примерной программой дисциплины «Информатика» для направлений 550000 «Технические науки» от 28.07.2000 г. Данный стандарт предусматривает в рамках дисциплины «Информатика» изучение алгоритмизации и программирования; языков программирования высокого уровня. Причем перечисленные дидактические единицы являются наиболее трудными для усвоения студентами. При их изучении возникает проблема выбора языка программирования, которая не решается однозначно в пользу объектно ориентированных языков.

Преимущества и недостатки преподавания объектно ориентированных языков были подробно рассмотрены в работе [10]. Объектно ориентированное программирование (ООП) не исключает, а охватывает технологию процедурного программирования.

Практика показывает, что с целью успешного освоения основ алгоритмизации и программирования в запланированное учебным планом время, программированию на объектно ориентированных языках должно предшествовать программирование на языках Рascal или Qbasic, так как они лучше иллюстрируют принципы программирования.

Учитывая необходимость индивидуализации обучения, изложение сначала ведется в рамках процедурного подхода к программированию на примере языка Basic и системы программирования QBasic. Использование языка Basic не является основополагающим, а преследует доступность изложения.

Для студентов, освоивших основы алгоритмизации и программирования в школьном курсе информатики, в качестве языка программирова-

ния предлагается Visual Basic, а точнее – Visual Basic for Applications (VBA). VBA – это версия языка программирования Visual Basic для приложений Microsoft Office. Причины этого выбора объясняются в [10].

4

Лабораторная работа ПРОГРАММИРОВАНИЕ АЛГОРИТМОВ ВЕТВЯЩЕЙСЯ СТРУКТУРЫ (РЕАЛИЗАЦИЯ БАЗОВОЙ

УПРАВЛЯЮЩЕЙ СТРУКТУРЫ «ВЕТВЛЕНИЕ»)

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

Задания для самостоятельной работы

Задание А

1.Освоить базовую управляющую структуру «ВЕТВЛЕНИЕ». Основные варианты структуры «ВЕТВЛЕНИЕ» и операторы, реализующие программное представление данной структуры, представлены в приложении А.

2.Изучить перечисленные далее пункты применительно к языку, на котором ведется программирование (QBasic или VBA):

числовые выражения;

арифметические операции, операции отношения и логические операции;

приоритет выполнения операций в выражениях.

3.Выяснить возможности алгоритмического языка для реализации:

условной и безусловной передачи управления (условный оператор If-Then-Else строчного типа, блочный оператор If-Elseif-Else- End If, оператор перехода Goto);

множественного выбора (оператор On-Goto, оператор Select Case);

4.Разработать визуальный алгоритм решения задачи в соответствии с заданием и записать его в виде блок-схемы.

5.Составить два варианта программы решения задачи: с использованием условного оператора If и с использованием переключателя (оператор

Select Case).

6.Подготовить тестовые варианты исходных данных для тестирования и отладки программ.

Задание В

1.Разработать визуальный алгоритм решения задачи в соответствии с заданием и записать его в виде блок-схемы.

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

3.Подготовить тесты. Тестовыми значениями исходных данных являются координаты точек. Для отладки и тестирования программы нужно взять по одной точке из каждой области и одну точку вне областей.

5

Задание к работе

Задание А

Вычислить значение функции Y(x) в зависимости от значения аргумента x в соответствии с вариантом задания (табл. 1).

1. Составить два варианта схемы алгоритма.

Составить два варианта программы на одной из версий алгоритмического языка Basic:

с использованием блочного оператора If-Elseif-Else-End If;

использованием оператора Select Case.

Осуществить вывод значений вводимых исходных данных и результатов вычисления значения функции.

2.Выполнить ввод, редактирование, тестирование и отладку программ. Получить результаты выполнения программ для тестового варианта исходных данных.

3.Проанализировать результаты выполнения программ.

 

 

 

 

 

 

 

 

 

Варианты задания А

 

Таблица 1

 

 

 

 

 

 

 

 

 

 

 

 

Вариант

 

 

 

 

 

 

 

 

Функция

X

 

a

1

 

2

 

 

 

 

3

 

4

 

 

x2 +a2

, если x < 1

-0,4

 

10,2

1

Y(x) =

 

lnx

 

, если 1 ≤ x ≤ 3

2,6

 

10,2

 

a

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

, если x > 3

11,4

 

10,2

 

 

 

 

a 1

x

 

 

 

 

 

 

 

a2

 

 

 

 

, если x ≤ -2

-5,5

 

3,5

2

 

4

 

 

 

 

 

 

 

 

 

 

 

 

Y(x) =

 

 

 

 

 

 

 

 

 

 

 

, если -2 < x < 0

-1,5

 

3,5

 

a ex

 

 

 

 

 

 

3 cos a sin x

 

 

 

, если x ≥ 0

3,14

 

3,5

 

 

ln a - x

 

 

 

, если x < 0

-1,9

 

4,5

3

Y(x) =

ea x - cos x

 

 

 

, если 0 ≤ x ≤ 1

0,5

 

4,5

 

 

a3 + x

 

 

 

, если x > 1

1,4

 

4,5

 

 

x2 + a3 x

 

 

 

, если x ≤ -2

-6,5

 

1,5

4

Y(x) =

a sin x

 

 

 

, если -2 < x ≤ 4

3,5

 

1,5

 

 

ex-a

 

 

 

, если x > 4

4,1

 

1,5

 

 

a - x

 

 

 

, если x < 0

-0,5

 

0,6

5

Y(x) =

tg x + cos a

 

 

 

, если 0 ≤ x ≤ 5

4,4

 

0,6

 

 

a2 + ln x

 

 

 

, если x > 5

6,6

 

0,6

 

 

tg a+ x

 

 

 

, если x < 0

-3,4

 

2,5

6

Y(x) =

 

 

 

2a

sinx

 

 

 

, если 0 ≤ x ≤ 1

0,8

 

2,5

 

 

x3 - a3

 

 

 

, если x > 1

2,1

 

2,5

7

 

sin x2 - a3

 

 

 

, если x < 1

-1,5

 

3,4

Y(x) =

 

3 a +

 

 

cos x

 

 

, если 1 ≤ x ≤ 4

3,14

 

3,4

 

 

 

 

 

ln x + a

 

 

 

, если x > 4

15,2

 

3,4

6

Окончание табл. 1

Вариант

 

 

 

 

 

 

 

 

 

 

 

 

 

Функция

X

a

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

3

4

 

 

4

 

 

 

 

 

 

x3

, если x < 1

4,6

1,6

8

 

a

Y(x) =

(a2 + x3) sin x

, если 1 ≤ x ≤ 4

1,7

1,6

 

 

a3 x2

 

 

 

 

, если x > 4

5,4

1,6

 

 

ln a x3

 

 

 

 

, если x < 1

0,5

1,2

9

Y(x) =

ea x

 

 

 

 

, если 1 ≤ x ≤ 7

3,5

1,2

 

 

x

 

 

 

 

 

 

 

, если x > 7

9,0

1,2

 

 

 

a

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

, если x < -1

-2,3

3,4

 

 

 

 

 

 

a x

 

 

 

 

10

Y(x) =

a sin x

 

 

 

 

, если -1 ≤ x ≤ 2

1,57

3,4

 

 

a + x2

 

 

 

 

, если x > 2

3,3

3,4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

a cos x2

 

 

 

 

, если x < 0

-1,6

1,5

11

Y(x) =

ex sin a

 

 

 

 

, если 0 ≤ x ≤ 2

1,4

1,5

 

 

2 a + x

 

 

 

 

, если x > 2

3,0

1,5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x2 a2

 

 

 

 

 

, если x < -1

-3,5

1,4

12

 

 

 

 

 

a

 

 

 

 

 

 

 

 

 

 

 

 

Y(x) =

tg

 

 

 

 

 

 

 

, если -1 ≤ x ≤ 2

0,7

1,4

x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

, если x > 2

10,5

1,4

 

 

a + ln x2

 

 

 

 

 

 

 

 

a+ x

 

 

 

 

, если x < -1

-5,3

4,3

13

Y(x) =

 

 

 

 

a

sinx

, если -1 ≤ x ≤ 1

0,5

4,3

 

 

cos x + a2

, если x > 1

3,14

4,3

 

 

a3 - x

 

 

 

 

, если x < 0

-0,5

2,5

14

Y(x) =

a2 + sin2 x

, если 0 ≤ x ≤ 3

1,57

2,5

 

 

 

 

 

 

 

 

 

 

 

, если x > 3

6,5

2,5

 

 

 

 

2ax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-0,4

3,7

 

 

 

 

 

 

2a x

2

 

 

, если x < 0

15

 

 

 

 

 

 

 

 

 

3,14

3,7

Y(x) =

a cos2 x

 

 

 

 

, если 0 ≤ x ≤ 4

 

 

a x2

 

 

 

 

, если x > 4

5,0

3,7

Задание B

Составить схему алгоритма и программу, которая определяет и выводит на экран сведения о положении точки с координатами (x, y) в указанной области. Координаты точки вводятся с клавиатуры по запросу пользователя. Выполнить ввод, редактирование, тестирование и отладку программы. При тестировании программы количество точек следует взять равным количеству областей плюс одна точка, которая должна находиться вне областей. Получить результаты выполнения программы для тестового варианта исходных данных. Проанализировать результаты выполнения программы.

7

Варианты задания В

Вариант 1

Точка (x, y) находится в области A;

точка (x, y) находится в области B;

точка (x, y) находится в области AB;

точка (x, y) находится в области C. Примечание: точки, находящиеся на раздели-

тельных прямых, находятся вне области С и АВ.

Вариант 2

Точка (x, y) находится в центре круга;

точка (x, y) находится в области A;

точка (x, y) находится в области B;

точка (x, y) находится в области C;

точка (x, y) находится в области D;

точка (x, y) не принадлежит кругу с радиусом 1.

Вариант 3

Точка (x, y) находится на пересечении осей координат;

точка (x, y) находится внутри области A;

точка (x, y) находится вне области A, в 1-м квадранте;

точка (x, y) находится вне области A во 2-м квадранте;

точка (x, y) находится вне области A в 3-м квадранте;

точка (x,y) находится вне области A в 4-м квадранте.

Примечание: точки, находящиеся на границе области, принадлежат области A.

Вариант 4

Точка (x, y) находится на пересечении осей координат;

точка (x, y) находится в области A;

точка (x, y) находится в области B;

точка (x, y) находится в области C;

точка (x, y) находится вне ромба.

Примечание: точки, принадлежащие разделительным прямым, находятся в области B.

Вариант 5

Точка (x, y) находится внутри круга A;

точка (x, y) находится внутри круга B;

точка (x, y) находится внутри круга С;

8

точка (x, y) находится внутри круга D;

точка (x, y) находится вне всех кругов.

Примечание: особо следует отметить попадание в центр круга, например, мы попали в центр круга А.

Вариант 6

Точка (x, y) находится в области A;

точка (x, y) находится в области B;

точка (x, y) находится в области C;

точка (x, y) находится вне всех областей. Примечание: Точки, лежащие на разделитель-

ных линиях, принадлежат области B.

Вариант 7

Точка (x, y) находится внутри кольца;

точка (x, y) находится в зоне кольца;

точка (x, y) находится между кольцом и рамкой;

точка (x, y) находится в зоне рамки;

точка (x, y) находится за рамкой.

Вариант 8

Точка (x, y) находится внутри круга;

точка (x, y) находится на дороге A;

точка (x, y) находится на дороге B;

точка (x, y) находится на дороге C;

точка (x, y) находится на дороге D;

точка (x, y) находится вне дорог. Примечание: точки, находящиеся на прямых линиях, принадлежат

соответствующей дороге; точки, находящиеся на окружности, принадлежат кругу.

Вариант 9

Точка (x, y) находится в области A;

точка (x, y) находится в области B;

точка (x, y) находится в области C;

точка (x, y) находится в области D;

точка (x, y) находится в области E;

точка (x, y) находится в области F.

Вариант 10

Точка (x, y) находится внутри круга;

точка (x, y) находится внутри прямоугольника;

точка (x, y) находится внутри треугольника;

точка (x, y) находится вне всех геометрических

9

фигур.

Вариант 11

Точка (x, y) находится в области A;

точка (x, y) находится в области B;

точка (x, y) находится в области C;

точка (x, y) находится вне всех областей.

Примечание: Точки, лежащие на разделительных линиях, принадлежат области B.

Вариант 12

Точка (x, y) находится на стороне AB квадрата

ABCD;

точка (x, y) находится на стороне BC квадрата

ABCD;

точка (x, y) находится на стороне CD квадрата

ABCD;

точка (x, y) находится на стороне DA квадрата

ABCD;

точка (x, y) находится на одной из сторон квадра-

та EFGH;

точка (x, y) находится вне сторон квадратов.

Вариант 13

Точка (x, y) находится внутри квадрата;

точка (x, y) — в области E в положительной полуплоскости;

точка (x, y) — в области E в отрицательной полуплоскости;

точка (x, y) находится на линии окружности;

точка (x, y) находится вне круга.

Вариант 14

Точка (x, y) находится внутри области A в положительной полуплоскости;

точка (x, y) находится внутри области A в отрицательной полуплоскости;

точка (x, y) находится в области B;

точка (x, y) находится в области C.

точка (x, y) находится вне всех областей.

Вариант 15

Точка (x, y) находится внутри области A в положительной полуплоскости;

точка (x, y) находится внутри области A в отрицательной полуплоскости;

точка (x, y) находится в области B;

точка (x, y) находится в области C;

10