ТОР 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 задавался в радианах. Не нашли, что искали? Воспользуйтесь поиском:
|