Материалы сайта
Это интересно
модулі та робота з файлами в Паскаль
Складання програм з використанням модулів. Теоретичні відомості. Прогресивним підходом у програмувонні вважається використання модулів або блоків. Набір процедур та функцій, об’єднаних в один блок (UNIT), може компілюватися незалежно від головної програми. Завдяки цьому час компіляції для великих програм може на багато зменшуватися, а це має велике значення при відладці програм, які приходиться досить часто компілювати. МОДУЛЬ(UNIT) – це програмна одиниця, текст якої відкомпільовано незалежно. Вона включає в себе визначення констант, типів даних, змінних, процедур та функцій, доступних для використання в програмах, які викликають. Внутрішня структура модуля прихована від користувача. Структура модуля. В модулі можна виділити декілька розділів: заголовок, інтерфейсна частина, реалізаційна частина і інілізаційна частина. Заголовок модуля. UNIT ім’я модуля; Інтерфейсна частина. INTERFACE початок розділу оголошень; USES модулі, які використовуються; LABEL оголошення доступних глобальних міток; CONST оголошення доступних глобальних констант; TYPE оголошення доступних глобальних типів; VAR оголошення доступних глобальних змінних; PROCEDURE(FUNCTION) заголовки доступних процедур (функцій); Реалізаційна частина. IMPLEMENTATION початок розділу реалізації; USES модулі, які використовуються при реалізації; LABEL оголошення скритих глобальних міток; CONST оголошення глобальних констант; TYPE оголошення скритих глобальних типів; VAR оголошення скритих глобальних змінних; PROCEDURE(FUNCTION) тіла доступних та скритих процедур (функцій); Інілізаційна частина. BEGIN основний блок модуля. END. Індивідуальне завдання. Варіант №7. Скласти програму на мові Pascal розв’язку даної задачі та виконання її на ЕОМ. Процедури та функції оформити у вигляді модуля. Задача 1. Модуль: unit gregory; {---------------------------------------------------------} interface uses crt; var c,k:array [1..5,1..4] of real; i,j:integer; m:byte; function facktorial(x:integer):real; {---------------------------------------------------------} implementation function facktorial(x:integer):real; var i:integer; facktorial1:real; begin facktorial1:=1; if i<=1 then facktorial:=1 else begin for i:=1 to x do facktorial1:=facktorial1*i; facktorial:=facktorial1; end; end; {---------------------------------------------------------} begin end. Запускна програма: uses gregory; begin clrscr; writeln('Введiть елементи масива:'); writeln; for i:=1 to 5 do for j:=1 to 4 do begin write('Елемент [',i,',',j,']='); readln(c[i,j]); end; m:=0; clrscr; for i:=1 to 5 do begin for j:=1 to 4 do begin k[i,j]:=c[i,j]/facktorial(i+j); if k[i,j]<1 then m:=m+1; write(k[i,j]:7:5,' '); end; writeln; end; end.