Читайте данную работу прямо на сайте или скачайте

Скачайте в формате документа WORD


Программирование и алгоритмические языки


Мнстерство освти науки кра

Сумський державний нверситет

Кафедра Моделювання складних систем

КУРСОВА РОБОТА

з предмету Програмування

алгоритмчн мови

на тему Використання пдпрограм

Виконав студент

Коваль к.В.

Група

ЕСЗТ-81с

Факультет

заочний

Переврив викладач

ндрúнко В.

.

Варант роботи

14

ЗМ

СТ

Змст

2

Вступ

3

1.

Завдання 1

4

1.1

Постановка задач

4

1.2

Виршення задач (програма)

4

1.3

Отриманий результат псля виконання програми

5

1.4

налз отриманого результату

5

1.5

Опис формату пдпрограми функц

6

1.6

Формальн та фактичн параметри функцÿ

6

2.

Завдання 2

7

2.1

Постановка задач

7

2.2

Виршення задач (програма)

7

2.3

Отриманий результат псля виконання програми

2.4

налз отриманого результату

2.5

Опис формату пдпрограми процедури

2.6

Формальн та фактичн параметри процедури

3.

Опис використаних в програмах операторв

Використана тература

ВСТУП

Часто в пдпрограм виявляються однотипн длянки, як виконують т ж сам обчислення, але з рзними даними. Так частини програм доцльно оформлювати у вигляд пдпрограм. Використання пдпрограм дозволя

:

1)    
2)    

м використовувано пам`ят ЕОМ;

3)    

В Турбо-Паскал видляють два види програм: процедури функцÿ. Структура процедур функцй така ж, як структура основно

1)     2)    

{$I м`я_файлу}

3)    

можливсть органзацÿ власних модулв). Структура любого модуля ма

вигляд:

unit м`я модуля

interface

uses список_використовуваних_модулв

implementation

uses список_використовуваних_модулв

begin Е end.

ЗАВДАННЯ 1

Постановка задач

 

Обчислити суми елементв нижнх трикутних матриць для матриць А(15,15) В(20,20).

Виконати з використанням пдпрограми функцÿ.

Виршення задач

Program

Uses

ar

{-= Пpоцедуpа встановлення кольоpу шpифта =-}

Procedure

{-= Пpоцедуpа введення числових елементiв матpиць =-}

Procedure

{-= Функцiя обчислення суми елементiв нижньо

Function

{-= Основна пpогpама =-}

'); TC(15); WriteLn(Sa:5:2); TC(7);

'); TC(15); WriteLn(Sb:5:2); TC(7);

Отриманий результат псля виконання програми

Масив A строка 1 елемент 1 > -5

Масив A строка 1 елемент 2 > -4

Масив A строка 1 елемент 3 > -3

Масив A строка 1 елемент 4 > -2

Масив B строка 6 елемент 1 > 10

Масив B строка 6 елемент 2 > 11

Масив B строка 6 елемент 3 > 12

Масив B строка 6 елемент 4 > 13

Масив B строка 6 елемент 5 > 14

Масив B строка 6 елемент 6 > 15

Сума елементiв нижньо

Сума елементiв нижньо

Аналз отриманого результату

Для зручност побудови програми замсть параметрв (15,15) та (20,20) матриць А В вдповдно, були використан розмри (4,4) та (6,6), як можуть змнюватися шляхом змни чисельних значень констант n та m.

Вище приведено результат, обчислений програмою. При введенн обох матриць, вводяться вс числов значення, потм з створених матриць видля

ться нижня трикутна матриця (за даними завдання):

Матриця А

Матриця В

-20

-19

-18

-17

-16

-15

-5

-4

-3

-2

-14

-13

-12

-11

-10

-9

-1

0

1

2

-8

-7

-6

-5

-4

-3

3

4

5

6

-2

-1

0

1

2

3

7

8

9

10

4

5

6

7

8

9

10

11

12

13

14

15

Для переврки врност обчислення програмою суми елементв нижньо

переврочне обчислення:

(Ц5) + (Ц1) + 0 + 3 + 4 + 5 + 7 + 8 + 9 + 10 = 40

результат обчислення програми:

Сума елементiв нижньо

Як ми можемо бачити, результати дентичн, це свдчить про те, що програма обробила вхдн дан врно видала врну вдповдь.

Вищевикладене може обгрунтовано свдчити про те, що програма виконана врно.

 

Опис формату пдпрограми функцÿ

Пдпрограма функця використову

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

Структура функцÿ така ж, як структура основно

Загальний вигляд функцÿ:

Особливост пдпрограми-функцÿ:

1)     

тльки один результат виконання (але може мати деклька вхдних параметрв);

2)     

ться менем функцÿ, тому в роздл операторв функцÿ обов`язково повинен бути присутнм оператор присвоювання, в вй частин якого сто

3)     

4)     

ться безпосередньо середин вираження по ? мен з вказуванням фактичних параметрв.

Формальн фактичн параметри функцÿ

Формальн параметри представляють собою список перемнних з вказуванням

В представленй вище програм використовуван формальн параметри функцÿ - перемнна, яка вказу

м`я масиву, який обробля

ться середин ц㺿 функцÿ (m:Mas); перемнна, яка вказу

розмрнсть масиву (x:Integer); та символьне значення (А або В) - м`я матриц (k:String):

Function

Фактичн параметри казуються безпосередньо середин тла основно

ЗАВДАННЯ 2

Постановка задач

 

Обчислити суми кльксть елементв, як знаходяться в нтервал вд a до b для матриць X(10,8) Y(10,12).

Виконати з використанням пдпрограми процедури.

Виршення задач

 

Program

Uses

ar

{-= Пpоцедуpа встановлення кольоpу шpифта =-}

Procedure

{-= Пpоцедуpа введення числових елементiв матpиць =-}

Procedure

Procedure

',s:5:2);

',v);

{-= Пpоцедуpа обчислення суми елементiв та

Procedure

{-= Основна пpогpама =-}

Отриманий результат псля виконання програми

Масив X строка 1 елемент 1 > -10

Масив X строка 1 елемент 2 > -9

Масив X строка 1 елемент 3 > -8

Масив X строка 1 елемент 4 > -7

Масив Y строка 5 елемент 3 > 16

Масив Y строка 5 елемент 4 > 17

Масив Y строка 5 елемент 5 > 18

Масив Y строка 5 елемент 6 > 19

Задайте iнтеpвал для матpицi X:

Задайте iнтеpвал для матpицi Y:

Сума елементiв матpицi X в iнтеpвалi вiд 5 до 12 доpiвню

-20.00

Кiлькiсть обчислених елементiв доpiвню

8

Сума елементiв матpицi Y в iнтеpвалi вiд 7 до 15 доpiвню

а

Кiлькiсть обчислених елементiв доpiвню

9

налз отриманого результату

Для зручност побудови програми замсть параметрв (10,8) та (10,12) матриць X та Y вдповдно, були використан розмри (5,4) та (5,6), як можуть змнюватися шляхом змни чисельних значень констант m та n.

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

нтервал для обох матриць окремо, в якому потрбно виконати пдсумовування та пдрахунок клькост пдсумованих елементв (в даному випадку для матриц X вд 5 до 12, в матриц Y вд 7 до 15 елементу матриц

Матриця X

Матриця Y

-10

-9

-8

-7

-10

-9

-8

-7

-6

-5

-6

-5

-4

-3

-4

-3

-2

-1

0

1

-2

-1

0

1

2

3

4

5

6

7

2

3

4

5

8

9

10

11

12

13

6

7

8

9

14

15

16

17

18

19

Для переврки врност обчислення програмою суми елементв в заданому нтервал вд 5 до 12 матриц Х, викона

мо пдрахунок видлених елементв для ц㺿 матриц:

переврочне обчислення:

(Ц6) + (Ц5) + (Ц4) + (Ц3) + (Ц2) + (Ц1) + 0 + 1 = Ц20

кльксть елементв:

результат обчислення програми:

Сума елементiв матpицi X в iнтеpвалi вiд 5 до 12 доpiвню

-20.00

Кiлькiсть обчислених елементiв доpiвню

8

Як ми можемо бачити, результати дентичн, це свдчить про те, що програма обробила вхдн дан врно видала врну вдповдь на обидва запитання в обох матрицях (масивах).

Вищевикладене може обгрунтовано свдчити про те, що програма виконана врно.

Опис формату пдпрограми процедури

Пдпрограма процедура так же, як функця, використову

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

Структура процедури така ж, як структура основно

Опис процедури ма

вигляд:

Procedure м`я (формальн_параметри);

роздл описв

розмщу

ться в основнй програм (program) в роздл описв.

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

роздли label, const, type, var роздл процедур та функцй.

Параметри процедур можуть бути трьох видв:

1)   

2)   

3)   

Опис вхдних параметрв процедури в списку формальних параметрв ма

такий вигляд:

список_перемнних1:тип1; список_перемнних2:тип2; Е

Вдповдно опис вихдних параметрв вигляда

так:

ar список_перемнних1:тип1; var список_перемнних2:тип2; Е

В Турбо-Паскал допуска

ться також використання нетипзованих вихдних параметрв, як мають вигляд:

ar список_перемнних

Виклик процедури в основнй програм вдбува

ться оператором виду:

м`я_процедури (фактичн_параметри);

Формальн фактичн параметри процедури

Формальн параметри мають вигляд списку перемнних з казуванням

При виклику процедури в основнй програм, задаються параметри, як являють собою фактичн параметри, як перелчен через кому (без вказвки

Вхдними фактичними параметрами можуть бути константи, перемнн вирази. Вихдними фактичними параметрами можуть бути тльки перемнн.

Опис використаних в програмах операторв

Program

заголовок програми, в якому вказу

ться м`я програми (утворю

ться так, як мена перемнних).

Uses

слугу

для використання модулв в програм.

Crt

стандартний модуль Турбо-Паскаля, який пдтриму

текстовий режим дозволя

задавати колр фону чи шрифту,

константи для органзацÿ прямо

Const

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

Type

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

ar

роздл, в якому описуються вс перемнн, як зустрчаються в програм.

Procedure

оператор пдпрограми-процедури (описаний вище).

Function

оператор пдпрограми-функцÿ (описаний вище).

Read

оператор вводу - кожне введене значення послдовно присвою

ться

ReadLn

те ж, що попереднй оператор, тльки псля введення даних вдбува

ться перехд на нову строку (тобто наступний оператор введення буде вводити дан з ново

Write

оператор виводу - виводить послдовно значення перемнних з списку, або виводить текст, занесений в одинарн лапки:

Write (список_перемнних,ТтекстТ);

WriteLn

те ж саме, що попереднй оператор, але псля виводу перемнних здйсню

ться перехд на нову строку (наступний оператор виводу буде виводити дан з початку ново

:=

оператор присвоювання - мен перемнно

For

оператор циклу, який ма

загальний вигляд:

for I:=N1 to N2 do оператор;

тут I - перемнна циклу; N1, N2 - початкове кнцеве значення перемнно

If

оператор мовного переходу, який ма

загальний вигляд:

if логчний_вираз then оператор_1 [else оператор_2];

тут квадратн дужки означають, що конструкця else з оператором 2 може бути вдсутня. Перед else крапка з комою не ставиться. Оператор 1,2 - це прост або складен оператори. Якщо логчний вираз стинний, то викону

ться оператор 1, накше - оператор 2 (або наступний за if оператор, якщо else вдсутн

). В якост операторв 1,2 можуть бути використан нш оператори if, в цьому випадку кожне else вдноситься до найближчого злва if, який не ма

else.

Begin

з цього ключового слова почина

ться частина програми роздлу операторв (почина

ться роздл, або ж вцлому програма).

End

цим ключовим словом закнчу

ться частина програми роздлу операторв (закнчу

ться роздл, або ж вцлому програма).

Використана тература

1.   

2.   

3.   

4.   

5.