Читать «Язык программирования Euphoria. Справочное руководство» онлайн - страница 10
Автор неизвестен
8 <= 7 -- 8 меньше чем или равно 7 (0,нет)
4 >= 4 -- 4 больше чем или равно 4 (1, да)
1 = 10 -- 1 равно 10 (0, нет)
8.7 != 8.8 -- 8.7 не равно 8.8 (1, да)
Как мы скоро увидим, эти операции могут выполняться и с рядами.
2.2.2 Логические операции
Логические операции выполняются в выражениях с помощью операторов and (И), or (ИЛИ), xor (НО), и not (НЕ), результатом работы каждого из которых является "истинность" или "ложность" выражения, 1 или 0, то есть:
1 and 1 -- 1 (истина, да)
1 and 0 -- 0 (ложь, нет)
0 and 1 -- 0 (ложь, нет)
0 and 0 -- 0 (ложь, нет)
1 or 1 -- 1 (истина, да)
1 or 0 -- 1 (истина, да)
0 or 1 -- 1 (истина, да)
0 or 0 -- 0 (ложь, нет)
1 xor 1 -- 0 (ложь, нет)
1 xor 0 -- 1 (истина, да)
0 xor 1 -- 1 (истина, да)
0 xor 0 -- 0 (истина, да)
not 1 -- 0 (ложь, нет)
not 0 -- 1 (истина, да)
Вы можете применять эти операторы также к другим числам. Правило такое: нуль означает ложь (нет), не-нуль означает истину (да). Например:
5 and -4 -- 1 (истина, да)
not 6 -- 0 (ложь, нет)
Эти операции также могут применяться и к рядам. См. ниже.
В некоторых случаях выполняется так называемая укороченная проверка истинности. Укороченная проверка производится в выражениях, содержащих операторы and или or.
2.2.3 Арифметические операции
В выражениях Euphoria доступны обычные арифметические операции: сложение, вычитание, умножение, деление, унарный минус, унарный плюс.
3.5 + 3 -- 6.5
3 - 5 -- -2
6 * 2 -- 12
7 / 2 -- 3.5
-8.1 -- -8.1
+8 -- +8
Вычисление результата, который оказывается слишком большим (т.е. вне диапазона от -1e300 до +1e300), порождает один из специальных атомов +infinity (+бесконечность) или -infinity (-бесконечность). На экране эти атомы отображаются как inf или -inf, если результат выводится на печать. Возможно также получение nan или -nan. "nan" означает "not a number" - "не число", т.е. некоторая неопределенная величина (такая как inf деленная на inf). Эти специальные значения введены в Euphoria на основании стандарта IEEE по вычислениям с плавающей точкой. Если вы находите одну из этих специальных величин среди результатов счёта по вашей программе, то обычно это является признаком ошибки в логике вашей программы, хотя inf как промежуточный результат иногда и допустим. Например, 1/inf равно 0, и это может быть "правильным" ответом в вашем алгоритме.
Деление на нуль, как и недопустимые аргументы в математических подпрограммах, например, квадратный корень из отрицательного числа или логарифм неположительного числа и т.п. ошибки, вызывают немедленную аварийную остановку вашей программы с сообщением об ошибке.
Единственной причиной, по которой вам может понадобиться унарный плюс, является желание особо подчеркнуть для читателя вашей программы, что некоторая величина именно положительная, и не иначе. Интерпретатор же не выполняет никаких действий, встретив унарный плюс.
2.2.4 Операции на рядах
Все операции (сравнения, логические и арифметические), описанные выше, равно как и математические подпрограммы, описанные в документе Часть II - Библиотека подпрограмм, могут быть применены к рядам и к отдельным числам (атомам).