Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Interface

END.

Unit

Разработка модулей

Оператор перехода к метке

Операторы ограничения и прерывания цикла

Continue; - ограничение цикла,

Break; - прерывание цикла.

 

Пример использования операторов для блокировки несанкционированного доступа в программу.

 

For i:= 1 to 3 do begin

Write('Введите ПАРОЛЬ:'); Readln(S); {S и Parol - переменные одного типа}

If S = Parol Then Break { прерывание цикла }

else If i <> 3 Then Continue; { ограничение цикла }

Writeln('Доступ к программе ЗАПРЕЩЕН');

Writeln('Нажмите Enter'); Readln; Halt { прерывание программы }

end; {продолжение программы}

Goto "метка";

 

M1: Write('Введите x>=0'); Readln(x); If x<0 Then Goto M1;

Метки описываются в разделе описания, например: Label M1;

 

Пример операторов для расчета конечной суммы вклада через 10 месяцев (pr - процентная ставка), при условии досрочного снятия вклада, если начальная сумма "S1" возрасла более чем в два раза:

S:= S1; For i:= 1 to 10 do begin

S:= S * (1 + pr/100); If S > 2 * S1 Then Goto M1 end;

M1: Writeln(S);

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

Исполняемая часть, Implementation (описание процедур: заголовок, разделы описания и выполнения, заголовки которых перечислены в интерфейсной части, а также локальных имен типов, меток, констант и переменных, используемых в инициирующей части).

Инициирующая часть, Begin.. End. ( блок операторов, выполняемых при подключении модуля к основной программе).

Фрагмент 1.

Структура модуля имеет вид:

Unit Name_M; { Name_M - имя модуля }

{-----------------------------------------------------------------------------------------------------------------}

Interface { Интерфейсная часть модуля}

{------------------------------------------------------------ раздел описания глобальных имен}

Type MM=array[1..10, 1..10] of real; {описание типа}

Var Max_F, Min_F: real; {описание глобальных переменных}

{------------------------------------------------------------------------------------------------------------------}

Procedure Name_P(p1: real; p2: MM);

{описание заголовков процедуры}

Function Name_f(p3,p4:real):real; { и функции}

{-----------------------------------------------------------------------------------------------------------------}

Implementation {Исполняемая часть модуля}

{--------------------------------------------------------------- раздел описания локальных имен}

Const C = 'Подключен модуль Name_M';

{ задание локальной константы}

Procedure Name_P; {Полное описание процедуры}

{ Раздел описания процедуры}

Begin { Раздел выполнения процедуры} End;

Function Name_f: real; {Полное описание функции}

{ Раздел описания функции}

Begin { Раздел выполнения функции} End;

{----------------------------------------------------------------------------------------------------------------- }

BEGIN { Инициирующая часть модуля}

Writeln(C); {операторы модуля}

Модуль записывается в файл с именем модуля, например, Name_M. pas.

Затем файл компилируется, например, Name_M. tpu, и записывается в каталог, указанный в опции Options, Directories, EXE & TPU, иначе - в текущий каталог.

При запуске программы, использующей модуль, файл с расширением ". tpu" ищется в каталоге, указанном в опции Options, Directories, EXE & TPU или Unit Directories, либо в текущем каталоге.

Program Pr_1;

Uses Name_M1, Name_M2;

 

Фрагмент 2. Пример разработки и подключения модуля работы с матрицами.

Unit MATR_1;

{--------------------------------------------------------------------------------------------------------------}

{--------------------------------------------------------------------------------------------------------------}

Type M = array[1..10, 1..10] of real;

M1 = array[1..10] of real;

Procedure MAT_1(a:M; var b:M; n: word);

Procedure MAT_2(a:M; var b:M1; n: word);

{--------------------------------------------------------------------------------------------------------------}

<== предыдущая лекция | следующая лекция ==>
С условием | Управление экраном в текстовом режиме
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 255; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.