ПРОГРАММИРОВАНИЕ С ИСПОЛЬЗОВАНИЕМ
Методические указания к выполнению лабораторных работ
по курсу “Программирование и основы алгоритмизации”
для студентов специальности 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