Литмир - Электронная Библиотека
Содержание  
A
A

Таблица П.1.2: Сводка команд

<b>ed</b>

n
Абсолютный номер строки n, n = 0,1, 2,...
.
Текущая строка
$
Последняя строка текста
/re/
Следующая строка, соответствующая
re
; после последней
$
циклическое движение к первой строке
?re?
Предыдущая строка, соответствующая re; после первой циклическое движение к последней $
'c
Строка с меткой
с
N1+/-n
Строка N1+/-n (аддитивная комбинация)
N1,N2
Строки с N1 по N2
N1;N2
Команда: сделать строку N1 текущей, затем вычислить N2. N1 и N2 могут быть определены любым из перечисленных выше способов

Таблица П.1.3: Номера строк в

<b>ed</b>

Упражнение

Если вы думаете, что знаете

ed
, попробуйте выполнить текст (см. справочное руководство по
quiz(6)
).

Приложение 2

Справочное руководство по

hoc

Hoc — диалоговый язык для арифметики с плавающей точкой

Б. Керниган
Р. Пайк
РЕЗЮМЕ

Hoc — это простой программируемый интерпретатор для выражений с плавающей точкой. Он обеспечивает поток управления в стиле Си, определения функций и обычные числовые встроенные функции, такие, как косинус и логарифм.

Выражения

Hoc представляет язык выражений, во многом подобный Си: хотя он и содержит несколько управляющих операторов, большинство операторов, например присваивания, суть выражения, значения которых не принимаются во внимание. Так, оператор присваивания

=
присваивает значение своей правой части левому операнду и вырабатывает значение, используемое в многократном присваивании. Грамматика выражений имеет вид:

выражение : число

 | переменная

 | (выражение)

 | выражение бинарная_операция выражение

 | унарная_операция выражение

 | функция(аргументы)

Числа представляются с плавающей точкой. Формат ввода распознается с помощью

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

Имена переменных формируются из букв, за которыми следуют строки букв и цифр. Здесь бинарная_операция означает двуместные операции, такие, как сложение или логическое сравнение, а унарная_операция — две операции отрицания: '

!
' (логическое отрицание НЕ) и (арифметическое отрицание, перемена знака). Все операции перечислены в табл. П.2.1.

^
Возведение в степень (FORTRAN
**
), правоассоциативна
! -
Одноместные логическое и арифметическое отрицания
* /
Умножение, деление
+ -
Сложение, вычитание
&gt; &gt;=
Операции отношения: больше, больше или равно
&lt; &lt;=
Меньше, меньше или равно
== !=
Равно, не равно (все отношения одинакового приоритета)
&amp;&amp;
Логическое И (оба операнда всегда вычисляются)
||
Логическое ИЛИ (оба операнда всегда вычисляются)
=
Присваивание, правоассоциативна

Таблица П.2.1. Операции по порядку уменьшения приоритета

Функции, как описывается ниже, могут быть определены пользователем. Аргументы функций — это выражения, разделяемые запятыми. В табл. П.2.2 перечислено несколько встроенных функций, имеющих по одному аргументу.

abs(x)
Абсолютная величина x
atan(x)
Арктангенс x
cos(x)
Косинус x
exp(х)
Экспонента x
int(x)
Целая часть x, усеченная в сторону нуля
log(x)
Натуральный логарифм x
log10(x)
Десятичный логарифм x
sin(x)
Синус x
sqrt(x)
Корень квадратный из x
143
{"b":"248117","o":1}