10. Як визначити суму елементів двомірного масива, розташованих на головній діагоналі?

Лабораторна робота №5

Програмування з використанням функцій користувача

та процедур

Мета роботи

Вивчити призначення функцій користувача та процедур. Освоїти способи обміну даними між основною програмою і функцією користувача, між основною програмою і процедурою.

Довідкові дані

Приклад 1. Розрахувати значення функції

Рrogram Project1;

uses SysUtils;

var a, b,z, x,y:real;

function p(p1,p2:real):real;

begin

p:=(p1-p2)/ln(p2);

end;

begin

writeln('Enter initial data:');

readln(a, b,z, x,y);

z:=arctan(p(x, a))/1+sin(p(y, b)));

writeln('z=',z:8:3);

readln

end.

Приклад 2. Визначити мінімальні елементи та їх індекси в матрицях N(2, 3) та M(3, 2):

Рrogram Project2;

uses SysUtils;

type mas=array[1..5,1..5] of real;

var N, M:mas;

mi, mj, i,j, r,c:integer;

min:real;

Procedure S(p:mas;x, y:integer;var mini, minj:integer;var k:real);

var i, j:integer;

begin

k:=p[1,1];mini:=1;minj:=1;

For i:=1 to x do begin

For j:=1 to y do

If p[i, j]<k then begin

k:=p[i, j];

mini:=i; minj:=j;

end;

end;

writeln('k=',k:8:2,mini, minj);

readln;

end;

begin// Основна програма

For i:=1 to 2 do begin

For j:=1 to 3 do

read(N[i, j]);

end;

For i:=1 to 3 do begin

For j:=1 to 2 do

read(M[i, j]);

end;

S(N,2,3,mi, mj, min);

writeln('min (N)=',min:8:2,mi:7,mj:7);

S(M,3,2,mi, mj, min);

writeln('min(M)=',min:8:2,mi:7,mj:7);

readln;

end.

Завдання:

НЕ нашли? Не то? Что вы ищете?

1. Розробити программу для обчислення z=f(x,a,b) з використанням функції користувача (таблиця 10). Початковими даними задатися самостійно.

2. Проаналізувати завдання, приведене в таблиці 11 та виділити частину задачі, яку доречно оформити у вигляді окремої процедури. Скласти процедуру й основну програму, яка її викликає.

Контрольні питання

1. Для чого призначені функції користувача?

2. Що називається програмою-процедурою?

3. В якому місці програми описуються функції користувача та процедури?

4. Які правила написання списку параметрів функції користувача?

5. Чим відрізняється список параметрів функції користувача від списку параметрів процедури?

6. Як здійснюється обмін даними між основною програмою та функцією користувача?

7. Як здійснюється обмін даними між основною програмою та процедурою?

8. Як звернутися з основної програми до функції користувача?

9. Як звернутися з основної програми до процедури?

10. Що називається формальними параметрами функції користувача або процедури? Для чого вводяться формальні параметри?

Таблиця 10

Вар

Математичний вираз

Вигляд функції

1

2

3

, x<-1

4

, x>1

5

6

7

8

9

10

11

12

13

14

15


Таблиця 11

Варіант

Умова задачі

Примітки

1

Обчислити , де s1 i k1 – сума і кількість додатніх елементів масива х(n); s2 i k2 - сума і кількість додатніх елементів масива y(m).

n=10, m=7

2

Обчислити , де s1 i k1 – сума і кількість додатніх елементів масива х(n); s2 i k2 - сума і кількість від’ємних елементів масива y(m).

n=8, m=13

3

Обчислити і вивести на екран суми додат-ніх елементів кожного рядка матриці А(4, 3), В(3, 4)

4

Обчислити , де х1 i х2 – корені рівняння 2×х2+х-4=0, у1 i у2 – корені рівняння а×у2+2×у-1=0

Всі корені дійсні

5

Знайти найбільші елементи і їхні порядкові номери для масивів х(n) та у(m)

n=8, m=12

6

Переписати додатні елементи з масивів х(n) та у(m) у масив z підряд

Запис у масив z здійснити в процедурі

7

Вивести на екран елементи цілочислених матриць А(4, 3), В(3, 4), кратні трьом

8

Знайти найменші елементи і номери рядків і стовпців, в яких вони розташовані для матриць N(5, 7) i M(4, 6)

9

Обчислити , де хі і уі задані масивами

Всі суми обчислити за до-помогою одної процедури

10

Обчислити , де хmaxмаксимальний елемент масива х(10); уminмінімальний елемент масива у(8)

хmax і уmin об-числити за до-помогою одної процедури

11

Обчислити і вивести на екран кількість від’ємних елементів кожного стовпця матриць А(5, 3), В(3, 7)

12

Обчислити суми елементів верхньої трикутної матриці для матриць А(7, 7), В(5, 5)

13

Знайти середні значення та стандартне відхилення для елементів матриць х(n) та у(m)

14

Обчислити суми і кількості елементів, що знаходяться у інтервалі від а до b для матриць А(5, 3), В(3, 7)

15

Перетворити масиви х(10) і у(15), роз-містивши в них підряд тільки додатні елементи. Замісто інших елементів записати нулі.


Література

1. Культин программирования в Delphi 7 Самоучитель. Издательство: BHV, 2009 – 640 с.

2. Delphi в задачах и примерах. Издательство: BHV, 2008 – 288 с.

3. Лекции по программированию на delphi– 652 c.

4. Delphi 6. Наиболее полное руководство. Издательство: BHV, 2001 – 1152 с.

5. Delphi 7 на примерах. 2003 – 384 с.

6. Delphi 7. Основы программирования. Решение типовых задач. Издательство: Кудиц-образ 2006 – 480 с.

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5