Главная | Случайная
Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Стандартные предикаты




3.1. Общесистемные стандартные предикаты

В этом разделе приведены предикаты [2], позволяющие использовать возможности предоставляемые операционной системой MS DOS.

· date(Год,Месяц,День) (integer, integer, integer): прототип (o,o,o) – cчитывает системную дату, прототип: (i,i,i) – установить дату.

Например:

date(J,M,T) – результат: J=2001,M=11,T=01

date(2001,02,26) – системная дата устанавливается на 26.02.2001.

· time(Час, Минуты, Секунды, Сотые_секунды) (integer, integer, integer, integer): прототип (o,o,o,o) – связывает соответствующие параметры с текущим временем, прототип (i,i,i,i) – устанавливает системное время.

Например:

time(S,M,Sek,_) – результат: S=15,M=35,Sek=22

time(17,05,0,0) – часы будут поставлены на 17:05:00.

· system(Строка_с_командой_DOS) (string): прототип (i) – заданная строка должна быть допустимой командой DOS. Разрешаются встроенные и внешние команды DOS, такие как файлы с расширением ".BAT". Заданная команда выполняется. Предикат system не выполняется, если команда некорректна с точки зрения DOS. Если "Строка_с_командой_DOS" пустая (""), то COMMAND.COM активируется в интерактивном режиме.

Например: system("dir A:") – выводится каталог накопителя А.

· comline(Строка) (string): прототип (o) – читает параметры, которые заданы в команде вызова скомпилированной программы на Турбо – Прологе.

Например: TEST abc (вызов в MS - DOS) – если в программе с именем TEST стоит команда comline(Х), то строка abc будет связана с Х.

· beep – производит звуковой сигнал

· bios(Номер_прерывания,Регистры_входные,Регистры_выходные)

(integer, reg, reg): прототип (i,i,o) – обеспечивает формирование прерывания с заданным номером. Регистры получают значения, установленные параметром "Регистры_входные". После обработки прерывания содержимое регистров связывается с параметром "Регистры_выходные". Параметры "Регистры_входные" и "Регистры_выходные" должны принадлежать домену regdom, который определяется следующим образом:

regdom = reg(AX, BX, CX, DX, SI, DI, DS, ES), где все аргументы имеют тип integer.

Например: bios($21, reg(АХ,0,0,0,0,0,0,0),reg(Nr,_,_,_,_,_,_,_)) – производится чтение с текущего накопителя. Номер накопителя связывается с Nr.

3.2. Предикаты преобразования типов

· char_int(Символ,Число) (char,integer): прототип (i,o) – связывает параметр "Число" с кодом ASCII параметра "Символ"; прототип (o,i) – связывает параметр "Символ" с символом, код которого определяется параметром "Число"; прототип (i,i) – выполняется успешно, если код, определяемый параметром "Число", является ASCII – кодом символа, определяемого параметром "Символ".

Например:

char_int(’A’,X) – переменная X принимает значение 65.

char_int(X,66) – переменная X принимает значение ‘B’.

char_int(‘A’,65) – выполняется успешно.

· str_char(Строка,Символ) (string,char): прототип: (i,o) – заданная первым параметром строка, состоящая из единственного символа, преобразуется в символ. Символ связывается со вторым параметром; прототип (o,i) – преобразуется символ в строку, состоящую из единственного символа и связывает ее с заданной переменной; прототип: (i,i) – выполняется успешно, если параметры связаны с представлениями одного и того же символа.

Например:

str_char(“A”,X) – результат X=’A’.

str_char(X,’A’) – результат X=”A”.

str_char(“A”,‘A’) – выполняется успешно.

· str_int(Строка,Целое число) (string,integer): прототип:(i,o) – преобразует cтроку в целое число. Число связывается со вторым параметром; прототип (o,i) – связывает с первым параметром строку, представляющую собой запись целого числа, связанного со вторым параметром; прототип(i,i) – выполняется успешно, если связанная с первым параметром строка является представлением числа, связанного со вторым параметром.

Например:

str_int(“123”,X) – результат: X=123

str_int(X,456) – результат: X=”456”

str_int(“234”,234) – выполняется успешно.

· str_real(Строка,Действительное число) (string,real): прототип:(i,o) – связывает второй параметр с действительным числом, определяемым записью числа в строке, заданной первым параметром; прототип (o,i) – связывает с первым параметром строку, представляющую собой запись действительного числа, заданного вторым параметром; прототип:(i,i) – выполняется успешно, если связанная с первым параметром строка является представлением числа, связанного со вторым параметром.

Например:

str_real(“1.23”,X) – результат: X=1.23

str_real(X,0.56) – результат: X=”0.56”

str_real(“4.567”,4.567) – выполняется успешно.

· file_str(Имя_ файла_ DOS,Строка) (string,string): прототип (i,o) – читает строку из заданного файла и связывает ее с параметром "Строка". Максимально допустимый размер строки – 64 К. Признаком конца строки является символ Ctrl – Z (десятичный код ASCII=26).

Например:

file_str(“B:TEXT1”,X) – символы из файла TEXT1 на накопителе B будут прочитаны и связаны с переменной X.

· field_str(Строка, Столбец, Длина, Строка_символов) (integer, integer, integer, string): прототип (i,i,i,i) – записывает строку, связанную с параметром "Строка_символов", в поле, определяемое длинной и номерами строки и столбца. Если строка длиннее, чем заданное поле, то записывается только начало строки. Если строка короче, то оставшиеся позиции поля заполняются пробелами; прототип (i,i,i,o) – строка, определяемая длиной и позицией, связывается с параметром "Строка_символов". Проследите, чтобы поле в текущем окне соответствовало параметрам.

Например:

field_str(15,5,5,"hollo") – строка "hollo" записывается в поле, начинающееся с позиции (15,5).

field_str(10,30,5,Х) – строка длиной 5, начинающаяся с позиции (10,30), связывается с переменной Х.

· str_len(Строка,Длина) (string,integer): прототип (i,o) – с параметром "Длина" связывается количество символов в заданной строке; прототип (i,i) – выполняется успешно, если строка имеет заданную длину.

Например:

str_len("hollo", Х) – результат: Х=5.

str_len("book", 4) – выполняется успешно.

· isname(Строка) (string) прототип (i) - выполняется успешно, если последовательность символов, связанная с параметром, представляет собой имя, допустимое в Турбо – Прологе.

Например:

isname ("abcd") – выполняется успешно.

· upper_lower(Строка1,Строка2) (string, string): прототип (i,i) – выполняется успешно, если с первым и вторым параметром связаны идентичные строки, представленные соответственно прописными и строчными буквами; прототип (i,o) – связывает со вторым параметром строку, полученную из строки, связанной с первым параметром, заменой прописных букв на строчные; прототип (o,i) – связывает с первым параметром строку, полученную из строки, связанной со вторым параметром, заменой строчных букв на прописные.

Например:

upper_lower("А","a") – выполняется успешно.

upper_lower("ZDF",X) – результат: X="zdf"

upper_lower(Х,"house") – результат: Х="HOUSE"

3.2. Арифметические операции

+ сложение; – вычитание; * умножение; / деление; mod абсолютная величина; div целочисленное деление

3.3. Операторы отношений

Операторы отношений являются инфиксными операторами (т.е. должны находится между двумя сравниваемыми величинами). Свободные переменные в операторах отношений не допускаются. Для операторов отношений приняты следующие обозначения:

< меньше; > больше; = равно; <= меньше или равно; >= больше равно; <> не равно.

3.4. Математические функции

Функция Описание

abs(X) /* (Var) (i) */ Возвращает абсолютное значение Х

round(X) /* (Var) (i) */ Возвращает округленное целое значение Х

sqrt(X) /* (Var) (i) */ Возвращает квадратный корень из Х

trunc(X) /* (Var) (i) */ Возвращает целое значение Х отбрасывая

дробную часть

exp(X) /* (Var) (i) */ Возвращает значение е в степени Х

log(X) /* (Var) (i) */ Возвращает десятичный логарифм Х

ln(X) /* (Var) (i) */ Возвращает натуральный логарифм Х

arctan(X) /* (Radians) (i) */ Возвращает арктангенс Х

cos(X) /* (Radians) (i) */ Возвращает косинус Х

sin(X) /* (Radians) (i) */ Возвращает синус Х

tan(X) /* (Radians) (i) */ Возвращает тангенс Х

Все тригонометрические функции требуют, чтобы аргумент X задавался в радианах.




Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2018 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных