====%%(wacko wrapper=text wrapper_align=center) Язык RL (II)%%==
=====%%(wacko wrapper=text wrapper_align=center)Часть 2. Унарная и бинарная арифметика.%%==
**1.** Написать функцию, дающую ответ **//TRUE//**, если ее аргумент представляет собой унарную запись некоторого числа, и ответ **//FALSE//** в противном случае.
**2.** Описать функцию"число термов в выражении", используя унарное представление результата.
**3.** Описать функцию сложения двух чисел в этом представлении (корректность записи чисел должна проверяться).
В следующих задачах если это специально не оговаривается, корректность чисел можно не проверять.
**4.** Описать функцию умножения двух чисел в этом представлении.
**5.** a.Описать функцию "усеченного" вычитания (если вычитаемое больше уменьшаемого, то получается 0) a.Описать функцию, дающую значение **//TRUE//**, если первый аргумент меньше или равен второму, и **//FALSE//**, если первый аргумент больше второго.
**6.** Описать функции нахождения частного и остатка от деления a.две разных программы, a.одну, выдающую ответ в виде (частное)(остаток)).
**7.** Наряду с унарной записью можно пользоваться бинарной (двоичной), используя буквы **//O//**, **//I//** как цифры 0, 1. Описать функции преобразования a.из унарной системы в бинарную a.наоборот.
Выполните в двоичной системе (без перевода в унарную!)
**8.** Проверку корректности записи числа.
**9.** Сложение.
**10.** a.усечённое вычитание. a.сравнение.
**11*.** Умножение (произведение десятизначных чисел должно вычисляться за разумное время).
**12*.** Деление с остатком (Две разные функции, или одна, которая даёт ответ в виде (частное)(остаток).
**13*.** Возведение в степень.
Следующие задачи можно решить на выбор в унарной или двоичной системе
**14.** Описать функцию подсчета числа скобок в выражении, используя унарную запись результата.
**15.** a.описать функцию проверки простоты числа в унарной записи. (Результат **//TRUE//** или **//FALSE//**) a.разложить натуральное число на простые множители