
- •Лабораторная paбота №1
- •Указания по выполнению работы
- •Лабораторная работа №2 Программирование алгоритмов линейной структуры
- •Указания по выполнению работы
- •Лабораторная работа №3 Программирование алгоритмов разветвленной структуры
- •Указания по выполнению работы
- •Варианты заданий к лабораторной работе № 3
- •Лабораторная работа № 4 Программирование алгоритмов циклической структуры.
- •Получить распечатки программ и результатов расчета.
- •Оформить отчет по лабораторной работе. Указания по выполнению работы
- •Составить программу вычисления k членов последовательности
- •Составить программу вычисления суммы k членов последовательности
- •Составить программу вычисления произведения k членов последовательности
- •Лабораторная работа №6 Программы для обработки одномерных массивов
- •Получить распечатку программы и результатов расчета.
- •Оформить отчет по лабораторной работе. Указания по выполнению работы
- •Лабораторная работа №5 Программирование с использованием подпрограмм
- •Получить распечатку программы и результатов расчета.
- •Оформить отчет по лабораторной работе. Указания по выполнению работы
- •200 Rem' подпрограмма вычисления
- •210 Rem факториала
Лабораторная работа №5 Программирование с использованием подпрограмм
Цель работы: изучить операторы обращения к подпрограммам и возврата из подпрограмм и приобрести практические навыки в составлении программ, содержащих подпрограммы.
Задание
Изучить операторы обращения к подпрограммам и возврата из подпрограмм языка Бейсик, особенности их применения и правила оформления подпрограмм.
Для заданного варианта составить схему алгоритма и реализующую его программуf; содержащую подпрограмму.
Произвести на ЭВМ расчеты по разработанной программе для исходных данных, приведенных в табл. 5.1
Получить распечатку программы и результатов расчета.
Оформить отчет по лабораторной работе. Указания по выполнению работы
Подпрограммы применяются в тех случаях, когда в различных местах программы нужно неоднократно выполнить одну и ту же совокупность действий (операторов). Применение подпрограмм упрощает программу, облегчает ее отладку. Возможность использования библиотеки стандартных подпрограмм, предназначенных для решения типовых задач, существенно облегчает программирование.
В Бейсике подпрограмма составляет единое целое с программой и оформляется как обособленная группа операторов, которые можно выполнять многократно, обращаясь к ним при необходимости из различных мест программы.
Оператор обращения к подпрограмме GOSUB-n обеспечивает переход к выполнению подпрограммы, начинающейся со
10 REM ПРОГРАММА ВЫЧИСЛЕНИЯ ФУНКЦИИ, 20 REM СОДЕРЖАЩАЯ ПОДПРОГРАММУ 30 PRINT 'ВВЕДИТЕ ЗНАЧЕНИЯ А,В'; 40 INPUT А,В 50 N = А\ G0SUB 200 - 60 L = Р
70 N = А-В\ G0SUB 200 80 М = Р 90 Y = L/M
100 PRINT 'ПРИ ЗАДАННЫХ ЗНАЧЕНИЯХ' 110 PRINT 'А='А,'В='В 120 PRINT 'ЗНАЧЕНИЕ ФУНКЦИИ Y='Y 130 GO ТО 270
200 Rem' подпрограмма вычисления
210 Rem факториала
220 Р =1
230 FOR 1=1 ТО N
240 Р - Р*1
250 NEXT I
260 RETURN
270 ;END
б)
Рис.В.1. Пример программирования с
использованием подпрограммы: а - схема алгоритма; 6 - его программная реализация.
строки с номером п.
Оператор возврата из подпрограммы return
ставится в конце подпрограммы и обеспечивает возврат из подпрограммы после ее выполнения к оператору, следующему за оператором обращения G0SUB п.
При разработке программ, содержащих подпрограммы, необходимо следить за соблюдением следующих правил: '
перед обращением к подпрограмме ее переменным должны быть заданы исходные значения;
подпрограмма не должна выполняться без обращения к ней. В качестве примера на рис.5.1 приведены алгоритм и программа расчета значения функции
у * а!/(а - Ь)!, где вычисление факториала оформлено в виде подпрограммы. Схема алгоритма подпрограммы рассмотрена в лабораторной работе № 4. 0 Подпрограмма расположена в строках с 200 по 260. Обращение к ней осуществляется два раза операторами G0SUB 200 в строках 50 и 70. Перед обращением переменной N, используемой в подпрограмме, задаются соответственно значения А и А-В, для которых вычисляется, факториал. Значения А! и (А-В)! запоминаются с помощью вспомогательных переменных L и М. Оператор GO ТО 270 (строка 130) выполняет обход подпрограммы и исключает ее выполнение без обращения к ней.
Таблица 5.1
Варианты заданий к лабораторной работе № 5 |
|
! Л ! ц/л |
Г Составить программу вычисления ! Исходные данные ! ! значения функции . • , &" * Ъ * с - |
! I | |
1 2 1 3 1 4 ! 5 ! |
! i 1 |
! y»2x+lg X ! 8,24 ! 34,2 ! 7,05 ! |
! 2 \ |
1 - : "| y=5x~ln X ! 3,72 ! 4,05 t 18,4 ! |
' 3 ? . . . |
| ЫЪ-а)[у(а)+4у(с}} J y«X$ifi 2х f 5,17 ! И,2 I 8,63 j |
' 4 1 - |
| | У»/х - 2х 1 6,22 ! 74,1 ! 82,3 1 |
! 5 |
1 ! у«х/сое х 1 1,54 \ 2,56 1 10,8 ! |
Иродошепше табл. 5.1
|
|
|
Продшшекие табл. 5.1 |
|||
|
А А |
! |
2 |
3 |
! 4 ! |
5 ? |
|
6 |
! |
|
1,54 |
! 2,65 ! ! 2,57 ! i ..... i |
12,6 i J |
|
7 |
1 -f |
|
4,63 |
34,2 1 ■■ f |
|
|
8 |
1 .Л |
a = ?jtb-min{b,c} + 3c-min{a,b) |
82,4 ! 34,7 1 |
7,84 J |
|
|
S |
t -j |
|
6,93 1 6,48 i |
3,26 1 71,6 \ \ |
|
|
10 |
I |
|
56,8 I 34,7 1 |
||
|
И |
|
|
11,6 |
f 3,93 ! 1 ! |
27/6 | |
|
12 |
1 |
|
5,75 |
i 0,54 ! |
0.24 ! i |
|
13 |
» |
z = 5a-max{b,c} + 7bc-max(a o> |
i |
t i OK i |
oo n » ww , / : { |
|
14 |
- i |
|
1 22,6 |
1 39,6 1 |
85,3 I } |
|
15 |
i |
i 77,8 |
i 12,6 i |
0,85 1 |
|
|
16 |
! |
|
CXI 1 i CO ! JS* j |
j v/6 |
4 4 |
|
17 |
I -J |
b ' с г « 7аПх.+ ЗаПхи к-и к Ы |
; 12,7. |
! 5 Г |
7 ! |
|
18 |
f i |
18,4 |
! 8 ! |
9 ! 6 I f |
|
|
19 |
2,35 |
! 7 1 |
|||
|
20 |
i |
|
48,6 |
1 9 ! |
8 1 ! |
|
21 |
..j |
|
5,83 |
1 8 1 |
— I 7 1 . i |
|
22 |
! |
Ь с V"» v*5 28а х,, Ы, Ы N 1 |
3,27 |
19! | и f |
4 i |
|
23 |
) |
18,7 |
f 10 I 5 | |
8 1 . , , « |
|
|
24 |
1 -i j |
8,33 38,2 |
! 8 ! { .:., ч. |
9' ? ., 5 |
|
|
25 |
\ 5 ! |
io i t |
|||
|
Примечание» Формулу общего члена последовательности у |
в i h ! |
||||
1 |
|
|
вариантах с 18 по 25 взять из соответствующих ! вариантов заданий к лабораторной работе » 4, f положив х ~ а . 1 к к , • ... Л • |
|||
|