Инструменты пользователя

Инструменты сайта


examination:flp:question50

Содержание

consult

Читать билет по database

Предикат consult считывает из файла fileName факты, описанные в разделе database, и вставляет их в вашу программу в конец соответствующей базы фактов. Предикат consult имеет один или два аргумента:

 consult(fileName) % (i)
 consult(fileName,databaseName) % (i,i)

Однако в отличие от assertz, если вы вызовите consult только с одним аргументом (без имени базы фактов), то будут считаны лишь факты, которые были описаны в разделе без имени (по умолчанию dbasedom).

Если вы вызовите consult с двумя аргументами (имя файла и имя базы фактов), то будут проверены только факты из указанной базы фактов. Если файл содержит еще что-нибудь, кроме фактов указанной базы, то предикат consult, когда он дойдет до этой строки, возвратит ошибку.

Обратите внимание, что предикат consult считывает по одному факту. Если файл содержит десять фактов, а в седьмом факте имеется какая-нибудь синтаксическая ошибка, consult занесет шесть первых фактов в базу данных фактов, после чего выдаст сообщение об ошибке.

Отметим, что предикат consult может считывать файлы только в том формате, который создает save. Файлы не должны содержать: символов верхнего регистра, за исключением тех, которые содержатся внутри строк в двойных кавычках; пробелов, за исключением тех, которые содержатся внутри строк в двойных кавычках; комментариев; пустых строк; идентификаторов (symbol) без двойных кавычек.

При создании или изменении файла с фактами в редакторе нужно соблюдать аккуратность.

cos

Функция cos возвращает значение косинуса своего аргумента.

 cos(X) % (i)

Выражение Z=cos(X) ставит в соответствие Z (если оно свободно) результат, или возвратит успех/неуспех, если Z уже определено. Например:

 Pi=3.141592653,
 Z=cos(Pi) % Z  будет равно -1

cursor

Стандартные предикаты ввода и вывода - read, readint, readchar, write и nl - также работают с любым текущим окном. Это означает, что предикаты ввода и вывода работают с любым окном, которое было сделано текущим при помощи makewindow, gotowindow или shiftwindow.

По умолчанию предполагается, что курсор расположен в верхнем левом углу окна. Однако можно использовать предикат cursor и помещать курсор в любую позицию текущего окна. Этот предикат имеет вид:

 cursor(<номер строки>,<номер столбца>).

Аргументы предиката являются целыми числами, задающими номера строки и столбца, по отношению к верхней строке и крайнему левому столбцу экрана. Строки и столбцы нумеруются, начиная с нуля: предикат cursor(0,0) обеспечивает вывод текста, начиная с верхнего левого угла экрана. Если случайно указывается позиция курсора, выходящая за рамки текущего окна, то во время выполнения программы будет выдано сообщение об ошибке.

Например, следующие три предиката могут быть использованы для вывода сообщения в центре экрана:

 makewindow(1,7,7,"",1,1,8,28),
 cursor(4,12),
 write("Отличный день").

Если опустить предикат cursor, данное сообщение будет выведено, начиная с левого верхнего угла окна. Аргументами предиката cursor могут также быть переменные, которым присваиваются целочисленные значения. Другой формой подцели, размещающей сообщение в центре окна, будет:

 makewindow(1,7,7,"",1,1,8,28),
 Row=4,
 Col=12,
 cursor(Row,Col),
 write("Отличный день").

Если в качестве аргументов предиката cursor используются неопределенные переменные, то этим переменным присваиваются текущие значения строки и столбца. Подцель:

 makewindow(1,7,7,"",1,1,8,28),
 Row=4,
 Col=12,
 cursor(Row,Col), 
 write("Отличный день "), 
 cursor(What_row,What_column).

присвоит переменной What_row значение 4, а переменной What_column - значение 27.

config

Этот параметр применим только для старых текстовых приложений DOS в оконном режиме!

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

config "<ConfigFileName>. CFG"

в начале программы. Приложение будет читать <ConfigFileName>. CFG и установить его конфигурацию

cursorform

Cursorform - предикат, устанавливает или возвращает высоту и вертикальную позицию курсора

examination/flp/question50.txt · Последние изменения: 2014/01/15 12:17 (внешнее изменение)