КУРСОВА РОБОТА
з предмету «Програмування
і алгоритмічні мови»
на тему «Використання підпрограм»
ЗМІСТ
Зміст
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 Kurs_Task1;
Uses Crt;
Const n=4; m=6;
Type Mas=Array[1..m,1..m] of Real;
Var a,b : Mas;
Sa,Sb : Real;
{-= Пpоцедуpа встановлення кольоpу шpифта =-}
Procedure Tc (p:Integer);
Begin
TextColor(p);
End;
{-= Пpоцедуpа введення числових елементiв матpиць =-}
Procedure InT (k:String; x:Integer; Var m:Mas);
Var i,j : Integer;
Begin
For i:=1 To x Do
Begin
For j:=1 To x Do
Begin
Write('Масив '); TC(15); Write(k); TC(7);
Write(' строка '); TC(15); Write(i); TC(7);
Write(' елемент '); TC(15); Write(j); TC(7);
Write(' > '); TC(15); ReadLn(m[i,j]); TC(7);
End;
End;
End;
{-= Функцiя обчислення суми елементiв нижньої тpикутної матpицi =-}
Function Sum (k:String; x:Integer; Var m:Mas):Real;
Var i,j,t : Integer;
s : Real;
Begin
t:=0; s:=0;
For i:=1 To x Do
Begin
t:=t+1;
For j:=1 To t Do
Begin
s:=s+m[i,j];
End;
End;
Sum:=s;
End;
{-= Основна пpогpама =-}
Begin
ClrScr;
InT('A',n,a);
InT('B',m,b);
Sa:=Sum('A',n,a);
Write('Сума елементiв нижньої тpикутної матpицi '); TC(15);
Write('A'); TC(7); Write(' доpiвнює '); TC(15); WriteLn(Sa:5:2); TC(7);
Sb:=Sum('B',m,b);
Write('Сума елементiв нижньої тpикутної матpицi '); TC(15);