Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
kozin_s_v_korobov_s_a_metodicheskie_ukazaniya_k....docx
Скачиваний:
8
Добавлен:
24.11.2018
Размер:
539.46 Кб
Скачать

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

В настоящей лабораторной работе необходимо вычислить значение величины в расчетную формулу, для которой входит несколько “похожих” сумм. Это делает целесообразным организацию функцию пользователя для вычисления входящих в расчетную формулу сумм.

При разработке функции пользователя можно поступить следующим образом. Вначале на основе анализа отдельных сумм напишем такое выражение для вычисления суммы, модификация которого позволит определить значения исходных сумм. Это оказывается возможным при введении некоторого количества параметров. Обратимся к задаче варианта 31. В расчетной формуле для этого варианта необходимо вычислить значение следующих двух сумм:

В данном примере искомое выражение для вычисления суммы может быть записано в следующем виде.

Сумма S1 может быть вычислена с помощью следующего вызова функции summa(1, n, 4, 1, 2), а сумма S2 – с помощью вызова функции summa(2, m, 1, 0, x).

Приведем реализацию программы для решения задачи варианта 31.

Program Lab6;

Uses

Crt;

Function Summa(n1, n2 : integer; a2, a1, a0 : Single) : Single;

Var

I : Integer;

S : Single;

Begin

S := 0;

For I := n1 To n2 Do

S := S + a2 * Sqr(I) + a1 * I + a0;

Summa := S;

End;

Var

n, m : Integer;

x, y : Single;

Begin

Write(‘n=’);

Readln(n);

Write(‘m=’);

Readln();

Write(‘x=’);

Readln(x);

Y := (1 + Summa(1, n, 4, 1, 2)) / (3 + Summa(2, m, 1, 0, x));

WriteLn(‘y=’, y : 8 : 3);

End.

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

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

  1. Назначение подпрограмм.

  2. Структура Pascal – программы при использовании подпрограмм.

  3. Сравните два способа организации связи с подпрограммой: внешние переменные и параметры.

  4. Почему переменные, действующие в головной части программы и “не работающие” в подпрограммах, следует описывать после описания подпрограмм.

  5. Какие существуют способы передачи параметров в подпрограмму?

  6. Опишите механизм передачи параметров по значению.

  7. Опишите механизм передачи параметров по ссылке.

  8. В чем состоит побочный эффект при использовании подпрограмм?

  9. В чем состоит назначение локальных переменных?

  10. Какова область видимости локальных переменных?

  11. Достоинства и недостатки вложенных подпрограмм.

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

Обработка одномерных массивов

7. 1. Постановка задачи

В настоящей лабораторной необходимо выполнить заданную обработку одномерного массива. Все основные действия необходимо выполнять с помощью подпрограмм (ввод исходных массивов, формирование новых массивов).

Даны числовые последовательности, состоящие из n элементов вещественного типа (n <= 20). Сформировать новые числовые последовательности в соответствии с заданным правилом (см. табл. 7.1).

7. 2. Варианты заданий

Варианты заданий приведены в табл. 7.1

 

Таблица 7. 1

N

Задание

1

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = (max_a + max_b) – (ai + bi) / 2,

yi = (max_b + max_c) – (bi + ci) / 2,

i = 1, 2, …, n.

Здесь max_a, max_b и max_c – значения максимальных элементов числовых последовательностей a, b и c

2

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = max ( ai, bi) / 2,

yi= max (bi, ci ) / 2,

i = 1, 2, …, n

3

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = min (ai, bi) / 2,

yi = min (bi, ci ) / 2,

i = 1, 2, …, n

4

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = max ( ai, bi , d) / 2,

yi = max (bi, ci , d) / 2,

i = 1, 2, …, n.; d – произвольное число

 

 

 

Продолжение табл. 7.1

N

Задание

5

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = min (ai, bi , r),

yi= min ( bi, ci , r) ,

i = 1, 2, …, n.; r – произвольное число

6

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = ( ai+ bi ) / 2,

yi = ( bi+ci ) / 2,

i = 1, 2, …, n

7

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = ,

yi =,

i = 1, 2, …, n

8

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = ,

yi =,

i = 1, 2, …, n

9

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y. Формирование выполняется в два этапа. На первом этапе осуществляется нормировка исходных последовательностей a, b и с. В результате нормировки получаются последовательности а', b' и c'. Затем формируются последовательности x и y.

, , ,

xi = а'i + b'i .

yi = b'i + c'i,

i = 1, 2, …, n

10

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = max (),

yi = max ( , ),

i = 1, 2, …, n

 

 

Продолжение табл. 7.1

N

Задание

11

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y. Формирование выполняется в два этапа. На первом этапе осуществляется нормировка исходных последовательностей a, b и с. В результате нормировки получаются последовательности а', b' и c'. Затем формируются последовательности x и y.

, , ,

xi = а'i + b'i ..

yi = b'i + c'i,

i = 1, 2, …, n

12

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y. Формирование выполняется в два этапа. На первом этапе осуществляется нормировка исходных последовательностей a, b и с. В результате нормировки получаются последовательности  а', b' и c'. Затем формируются последовательности x и y.

, , ,

xi = а'i - b'i

yi = b'i -  c'i,

 

13

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi= ai + bn-i+1,

yi = bi + cn-i+1,

i = 1, 2, …, n

14

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi= min (an-i+1, bi, r),

yi= min ( bn-i+1 , ci, r) ,

i = 1, 2, …, n.;

r – произвольное число

15

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = min (an-i+1, bi),

yi= min ( bn-i+1 , ci) ,

i = 1, 2, …, n.;

r – произвольное число

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

N

Задание

16

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi= max(an-i+1, bi , r),

yi = max ( bn-i+1, ci, r) ,

i = 1, 2, …, n.;

r – произвольное число

17

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = ai* bi -

yi = bi *ci - ,

i = 1, 2, …, n.

18

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующими правилами

ai,          если        ai >0 и bi >0

xi = bi ,     если        ai< 0 и   bi <0                      

0           в оставшихся случаях                             

 

bi ,          если        bi >0 и ci>0                          

yi = ci,        если       bi<0 и   ci<0                                      

0          в оставшихся случаях                                           

i = 1, 2, …, n.

19

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующим правилом

xi = ai- bi -

yi = bi -  ci - ,

i = 1, 2, …, n.

20

Даны три числовые последовательности a, b и c. Сформировать две новые последовательности x и y в соответствии со следующими правилами

 

 ai,          если        ai >0 и bi <0

xi = bi ,     если        ai< 0 и   bi >0                      

0           в оставшихся случаях                             

 

bi ,          если        bi >0 и ci<0                          

yi = ci,        если       bi<0 и   ci>0                                      

0          в оставшихся случаях                                           

i = 1, 2, …, n.

 

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]