Язык Форт и его реализации


         

Следующий протокол показывает работу введенных


Следующий протокол показывает работу введенных определений по вычерчиванию графика интересующей нас функции:

> НАЧАТЬ ФУНКЦИЯ U ГРАФИК !0 !10 !20 !30 !40 !50 188 * * 187 186 * 185 * 184 183 182 181 * 180 179 * 178 177 * 176 175 174 173++++++++++++++++++++++ ++ ++ ++ ++ ++ ++ +++++++++++++++++++ !0 !10 !20 !30 !40 !50 OK > 175 ВНИЗ 10 ВПРАВО ГРАФИК !10 !20 !30 !40 !50 13+ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ + + + 12 11 * 10 * 9 * 8 7 * 6 5 4 * 3 2 * 1 0----------*---------------------------------------*--------- -1 -2 + + + + + + + + + + ++ ++ ++ !10 !20 !30 !40 !50 OK

Вычерчивание графиков на графопостроителе чрезвычайно осложняется обилием деталей чертежа, которые надо учитывать. При этом собственно вычисление значений функции составляет незначительную часть в общем объеме работы. Многие элементы чертежа имеют, как правило, какое-нибудь стандартное значение, принимаемое по умолчанию, и программист может их только переопределять (например, заголовок, штамп, оформление полей, выбор шрифтов и цвета надписей и т.д.). С каждым из этих крупных элементов можно связать список слов, обрабатывающих те или иные его компоненты, и для установки нужного значения исполнять соответствующее слово в контексте данного элемента. Сходные действия (например, задание шрифта или цвета) в разных контекстах могут обозначаться одними и теми же словами, что создает большие удобства для программиста. Вместе с тем и синтаксис для задания действий графопостроителя можно сделать максимально простым и удобным для пользователей-непрограммистов. Например, определение элементов чертежа можно задавать так:

ГРАФИК XY X ОТ 0 ДО 4 ШАГ 1 Y ЛОГАРИФМ ОТ 1 ДО 100 Х ШТРИХ РАЗМЕР 0.25 РАМКА ЗАГОЛОВОК" ЧЕРТЕЖ 1" РИСУЙ

В результате будет нарисована прямоугольная рамка с заголовком «ЧЕРТЕЖ 1» надпечаткой оси абсцисс в виде штрихов, пересекающих рамку, и логарифмической разметкой оси ординат. Огромное число других значений, необходимых для построения чертежа, принимается по умолчанию.Далее можно начертить собственно график функции, используя, например, ее задание через вектор значений:

ФУНКЦИЯ U МАСШТАБ 100 ЦВЕТ КРАСНЫЙ РИСУЙ

Аналогично наносим на чертеж дополнительные элементы:

ПОДЗАГОЛОВОК ВПРАВО ТЕКСТ" Y=SIN 3X + SIN 120X" РИСУЙ

и т.д. Указанные действия можно не только непосредственно исполнять, но и компилировать, задавая впоследствии их исполнение через одно слово — имя скомпилированной программы.


Содержание  Назад  Вперед