Скачиваний:
54
Добавлен:
10.02.2014
Размер:
166.91 Кб
Скачать

Министерство образования и науки Российской Федерации

Саратовский государственный технический университет

Балаковский институт техники, технологии и управления

ПРОГРАММИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ

ПОДПРОГРАММ ФУНКЦИЙ НА ЯЗЫКЕ ТУРБО ПАСКАЛЬ

Методические указания к выполнению лабораторных работ

по курсу “Программирование и основы алгоритмизации”

для студентов специальности 210100

дневной, вечерней и заочной форм обучения

Одобрено

редакционно-издательским советом

Балаковского института техники,

технологии и управления

Балаково 2007

ЦЕЛЬ РАБОТЫ: Овладение навыками алгоритмизацией и програм­ми­рования задач с использованием функции пользователя.

ОСНОВНЫЕ ПОНЯТИЯ

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

Различает два вида подпрограмм: процедуры и функции, которые описываются в разделе описания главной программы.

Function<имя>(<список формальных параметров>: тип>) : <Тип возвращаемого значения>;

Label … - раздел описаний меток

Const... - раздел описания констант

Туре ... - раздел описаний типов

Var... - раздел описания переменных

Procedure ... - вложенная процедура

Function... - вложенная функция

BEGIN

<операторы>;

END;

При вызове подпрограммы работа основной программы останавливается. Подпрограмма обрабатывает данные, переданные из главной программы, и по завершении выполнения возвращает главной программе результат.

Передача данных из главной программы в подпрограмму и возврат результата осуществляется с помощью параметров. Различают формальные параметры - параметры, определенные в заголовке подпрограммы, и фактические параметры – выражения, задающие конкретные значения при обращении к подпрограмме. При вызове подпрограммы ее формальные параметры замещаются фактическими, переданными из главной программы.

Формальные параметры подпрограммы указывают, с какими параметрами сле­дует обращаться к этой подпрограмме (количество параметров, их последова­тельность, типы). Они задаются в заголовке подпрограммы. Для каждого формального параметра следует указать имя и тип, тип формального параметра может быть практи­чески любым. Все формальные параметры делятся на:

- параметры-значения (эти параметры в основной программе подпрограм­мой не меняются);

- параметры-переменные (эти параметры подпрограмма может изменить в основной программе)

Параметры-значения передаются основной программой в подпрограмму, указываются в заголовке подпрограммы своим именем и через двоеточие - типом. Если параметров-значений одного типа несколько, их можно объединить в од­ну группу, перечислив их имена через запятую, а затем уже указать общий тип.

Пример.

function Sum(X, Y: Integer): Real;

Procedure Sum(X, Y: Integer; var S: Real);

Параметры – переменные используются для передачи результатов выполнения процедуры в основную программу. В списке формальных параметров они указываются после слова var.

В качестве фактического параметра на месте параметра-значения при вызове подпрограммы может выступать любое выражение совместимого для присваива­ния типа, не содержащее файловую компоненту, например:

Sum (2+i, 8*i, S);

Пример описания и вызова функции.

var a, b, s: integer;

function sum (x, y: integer): integer ;

begin

sum:=x+y;

end;

begin

read (a,b);

s:=sum (a,b);

write (' s=',s);

end.

где sum - имя функции; a,b – фактические параметры, которые пе­редаются из основной программы в функцию; х,у - формальные параметры-значения, через которые в функцию пе­редаются значения фактических параметров из основной программы.

Вызов функции осуществляется в пра­вой части оператора присваивания, при этом в выражении записываются имя функции со списком фактических параметров sum(a,b). Фактические параметры по ко­личеству и по типам должны совпадать с формальными параметрами функции.

Формальным параметрам функции присваиваются соответствующие значения фактических параметров: х:= a; у:= b.

Далее выполняется тело функции, вычисленное значение присваивается имени функции и возвращается в основную программу в точку вызова.

Если в теле функции содер­жится обраще­ние к функции, то новое вычисление выполняется по при­веденному алгоритму. В по­добных случаях ал­горитм является рекурсивным.

ПРИМЕРЫ ВЫПОЛНЕНИЯ

Пример 1. Вычислить, используя функцию

program logar;

var z, x, y, b: real;

function l (с, а: real): real;

begin

l:=ln(c)/ln(a);

end;

begin

read (x, y, b);

write (‘z=’, z : 6 :3);

end.

Пример 2. Вычислить

program func;

var x, y, z: integer; s: real;

function f (a, b: integer): real;

begin

f:=sqrt(a*a+b*b+sqr(sin(a*b)));

end;

begin

read (x, y, z);

s:=f (x, y)+f (z, x)+f (y, z);

write (‘s=’, s : 6 : 3); end.

ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ

Номер варианта выбирается по порядковому номеру студента в спи­ске группы. По проведенному заданию требуется:

1. Определить порядок реализации вычислений.

2. Составить графическую схему алгоритма.

3. Записать программу на языке Turbo Pascal.

4. Выполнить расчеты на ЭВМ.

5. Написать отчет по лабораторной работе.

ВАРИАНТЫ ЗАДАНИЙ

1. Вычислить

;

x1 =1.1; x2=1.5

2. Вычислить:

;

x1=2.02; x2=2.845

3. Вычислить:

;

x1=6.03; x2=2.502

4. Вычислить:

;

x1=5.4; x2=6.311

5. Вычислить:

;

x1=4.05; x2=0.251

6. Вычислить:

;

x1=2.06; x2=3.535

7. Вычислить:

;

x1=3.07; x2=4.358

8. Вычислить:

;

x1=2.385; x2=1.08

9. Вычислить:

;

x1=2.09; x2=0.811

10. Вычислить:

;

x1=1.10; x2=2.381

11. Вычислить:

;

x1=0.873; x2=1.11

12. Вычислить:

;

x1=0.251; x2=2.12

13. Вычислить:

; x1=0.581; x2=2.13

14. Вычислить:

;

x1=1.14; x2=2.483

15. Вычислить:

;

x1=1.15; x2=2.11

16. Вычислить:

;

x1=1.16; x2=2.543

17. Вычислить:

;

x1=1.17; x2=2.183

18. Вычислить:

;

x1=1.18; x2=0.125

19. Вычислить:

;

x1=2.19; x2=1.117

20. Вычислить:

;

x1=1.20; x2=2.813

21. Вычислить

;

x1=1.01; x2=1.51

22. Вычислить:

;

x1=2.02; x2=2.845

23. Вычислить:

;

x1=2.06; x2=3.535

24. Вычислить:

;

x1=3.07; x2=4.358

25. Вычислить:

;

x1=2.385; x2=1.08

26. Вычислить:

;

x1=0.251; x2=2.12

27. Вычислить:

;

x1=0.581; x2=2.13

28. Вычислить:

;

x1=1.14; x2=2.483

29. Вычислить:

;

x1=1.15; x2=2.11

30. Вычислить:

;

x1=1.17; x2=2.183

СОДЕРЖАНИЕ И ОФОРМЛЕНИЕ ОТЧЕТА

Отчет оформляется в текстовом редакторе Word на бумаге формата А4 ГОСТ 6656-76 (210х297 мм) и содержит:

  1. название работы;

  2. цель работы.

  3. задание;

  4. графическую схему алгоритма;

  5. программу на языке TURBO PASCAL;

  6. результаты вычисления;

  7. проверку результатов в Mathcad.

ВОПРОСЫ ДЛЯ САМОКОНТРОЛЯ

    1. Назначение подпрограмм пользователя.

    2. Виды подпрограмм пользователя.

    3. Чем отличается подпрограмма функции от подпрограммы процедуры?

    4. Как описываются подпрограммы функции?

    5. Как описываются подпрограммы функции?

    6. Как осуществляется вызов подпрограммы функции?

    7. Фактические и формальные параметры подпрограмм.

    8. Механизм передачи параметров из программы в подпрограмму и наоборот.

    9. Назначение формальных параметров-значений.

    10. Назначение формальных параметров- переменных.

    11. Что такое рекурсия?

ВРЕМЯ, ОТВЕДЕННОЕ НА ВЫПОЛНЕНИЕ РАБОТЫ

Подготовка к работе - 1 акад. ч.

Выполнение работы - 1 акад. ч.

Расчеты на ЭВМ - 1 акад. ч.

Оформление работы - 1 акад. ч.

ЛитЕратура

  1. Алексеев В.Е., Ваулин А.С., Петрова Г.Б. Вычислительная техника и программирование: (практикум по программированию).- М.: Выс­шая школа, 1991.

  2. Алексеев Е.Р. Turbo Pascal 7.0. Численные методы. – М.: АСТ, 2004.

  3. Бородич Ю.С., А.Н. Вальвачев, А. И. Кузьмич. Паскаль для персо­нальных компьютеров: Справ. Пособие/– Мн. : Высш. шк. : БФ РИТМП “НИКА”, 1991.

  4. Гусева А.И. Учимся программировать: Pascal 7.0. Задачи и методы их решения. – М.: Диалог-МИФИ, 1997.

  5. Емелина Е.И. Основы программирования на языке Паскаль. – М.: Фи­нансы и статистика, 1997.

  6. Епанешников А.М., Епанешников В.А. Программирование в среде TURBO PASCAL 7.0. - М.: Диалог-МИФИ, 1996.

  7. Зуев Е.А. Язык программирования Turbo Pascal 6.0, 7.0.- М.: Веста, Ра­дио и Связь, 1993.

  8. Немнюгин С.А. Turbo Pascal. – СПб.: Питер, 2001.

  9. Петров А.В. и др. Вычислительная техника и программирование. - М.: Высшая школа, 1990.

  10. Попов В.Б. TURBO PASCAL 7.0. -М.: Финансы и статистика, 1996.

  11. Попов В.Б. Turbo Pascal для школьников. - М.: Финансы и стати­стика, 2001.

  12. Турбо Паскаль 7.0.- К.: Торгово-издательское бюро BHV, 1996.

  13. ГОСТ 19.701-90. Единая система программной документации. Схемы алгоритмов, программ, данных и систем. Условные обозначе­ния и правила выполнения.

СОДЕРЖАНИЕ

  1. Цель работы 2

  2. Основные понятия 2

  3. Порядок выполнения работы 5

  4. Примеры выполнения работы 6

  5. Варианты заданий 6

  6. Содержание и выполнение отчета 12

  7. Вопросы для самоконтроля 13

  8. Время, отведенное на выполнение работы 13

Литература 14

ПРОГРАММИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ

ПОДПРОГРАММ ФУНКЦИЙ НА ЯЗЫКЕ ТУРБО ПАСКАЛЬ

Методические указания к выполнению лабораторных работ

по курсу «Программирование и основы алгоритмизации»

для студентов специальности 210100

дневной, вечерней и заочной форм обучения

Составили: Стельмах Ирина Валентиновна

Власов Вячеслав Викторович

Рецензент О.В. Виштак

Редактор Л.В.Максимова

Корректор Н.Т. Мальчикова

Подписано в печать Формат 60х84 1/16

Бумага тип. Усл. печ. л. 1,0 Уч. – изд.л 1,0.

Тираж 100экз. Заказ Бесплатно

Саратовский государственный технический университет

410054, г. Саратов, ул. Политехническая, 77

Копирпринтер БИТТиУ,413840, г. Балаково, ул.Чапаева, 140

16

Соседние файлы в папке методические указания для лабораторных работ