РефератыИностранный языкРаРазработка модулей программы /Укр./

Разработка модулей программы /Укр./

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


Теоретичні відомості.


Прогресивним підходом у програмувонні вважається використання модулів або блоків. Набір процедур та функцій, об’єднаних в один блок (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.


Робота з файлами.


Теоретичні відомості


Файл – це сукупність даних однакового типу. Таке визначення збігається з визначенням масиву, але, на відміну від останнього, файл зберігають на диску, кількість даних у файлі при його описуванні не вказується, елементи файла не мають індексів, що ускоаднює роботу з ними.


Опис файлового типу має вигляд:

p>

Type <ім'я типу> = File of <тип компонент>;


Процедури і функції для роботи з файлами:


Assign – зв'язує деякий зовнішній файл на диску з файловою змінною.


Reset – відкриває уже раніше створений файл данних на диску, ім'я якого було перед цим пов'язане процедурою Assign.


Rewrite – створює новий файл і відкриває його. Якщо файл вже існує вміст знищується, а сам файл відкривається знову.


Close – закриває файл, який зв'язаний з файловою змінною.


Eof – набуває значення true, якщо досягнуто кінець файла, інакше набуває значення false.


IOResult – використовується для пошуку помилок, які виникають при роботі з файлами.


Індивідуальне завдання


Задача 1.


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


Оформити файл відповідей та файл питань.


Задача 2.


Написати програму що виводить на екран студентів, що набрали прохідний бал не нижче 8.


Задача 1:


program zavd1;


uses


crt;


const


qfile='quest.txt';


afile='ansver.txt';


var


f1,f2:text;


i,k:integer;


name,ansv:string;


begin


clrscr;


assign(f1,qfile);


assign(f2,afile);


rewrite(f2);


reset(f1);


write('Введіть своє ім`я, групу :');


readln(name);


writeln(f2,name);


while not eof(f1) do begin


readln(f1,name);


writeln(name);


write('Ваша відповідь :');


readln(name);


writeln(f2,name);


readln(f1,ansv);


if ansv=name then k:=k+1;


i:=i+1;


end;


writeln(f2,'Всього питань :');


writeln(f2,i);


writeln(f2,'Правильних питань :');


writeln(f2,k);


close(f1);


close(f2);


end.


РЕЗУЛЬТАТИ РОБОТИ ПРОГРАМИ:


Вміст файлу протоколу:


Бригіда e02


толстой


поет


да


Всього питань :


3


Правильних питань :


2


Задача 2:


program typefiles;


uses


crt;


const


kolocenok=2;


type


abiturient=record


fio:string;


marks:array [1..kolocenok] of integer;


end;


var


ser,i,j,k:integer;


abit: array [1..40] of abiturient;


temp: abiturient;


begin


clrscr;


write('Введiть кiлькiсть абiтурiентiв: ');


readln(k);


for i:=1 to k do begin


writeln('абiтурiент ',i,':');


write('im`я: ');


readln(temp.fio);


writeln('Введiть оцiнки: ');


for j:=1 to kolocenok do readln(temp.marks[j]);


abit[i]:=temp;


end;


clrscr;


for i:=1 to k do begin


writeln('абiтурiент ',i,':');


write('im`я: ',abit[i].fio);


write(' мае оцiнки: ');


ser:=0;


for j:=1 to kolocenok do begin


write(abit[i].marks[j],', ');


ser:=ser+abit[i].marks[j];


end;


writeln;


if ser>8 then writeln(' З А Ч И С Л Е Н И Й ! ');


writeln;


end;


end.


РЕЗУЛЬТАТИ РОБОТИ ПРОГРАМИ:


абiтурiент 1:


im`я: Саша мае оцiнки: 4, 5,


ЗАЧИСЛЕНИЙ!


абiтурiент 2:


im`я: Петро мае оцiнки: 3, 4,


абiтурiент 3:


im`я: Олег мае оцiнки: 4, 2,


абiтурiент 4:


im`я: Микола мае оцiнки: 2, 2,


Висновок:поглибив знання, вміння та навички розробки з використанням текстових та типизованих файлів, закріпив свої знання в області записів та типизованих файлів.

Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Разработка модулей программы /Укр./

Слов:820
Символов:8469
Размер:16.54 Кб.