������ 5

�p��������i �����i

������ 1. H������� �����i� (POWER x n) ���������� �i�������� �� ������� �� �������� �i���i��� ���p��i�.

���p�������� �p������������ ����� n � ��i������� ���i.
(DEFUN POWER (x n)
	(SETQ *PRINT-BASE* 2)
	(SETQ a (Pw x (REVERSE (UNPACK n))))
	(SETQ *PRINT-BASE* 10)
	a  )

(DEFUN Pw (x lst)
	((NULL lst) 1)
	((EQL (CAR lst) \1) (* x (Pw (* x x) (CDR lst))))
	(Pw (* x x) (CDR lst))  )
������ 2. ���� ������������ �� ��������� �i�i��� ������� ����������� ����� �[1] <...< A[N]. ������ �������� ���������� �����, ��� �� ����������� � ������i ���� ������ ����� i� ������i. ���� ���� ���������� ���i�� � ������ �������; ������ ������� ������i ���� ������� � �� �� ����� ������ ����. ������ ��i��� ����p���� - O(N).

�������� ������i � ����� 2^N �������� ���, �����i��� ���� ��� ������� N ������ ���� ������ ����. ���� A[1] > 1, �� 1 ���� �i����i���. I����� p��������� ���� S[k] = A[1] + A[2] + ... + A[k]. ����������, �� ��� ������� k ��i ����� �i� 1 �� S[k] ����������� � ������i ���� �������i� �. H���� �i�i������ �����, ��� �� ���������� ����� �������� �i�� ������� ������i A, ��pi���� S[k]+1. ���� k < N �� A[k+1] > S[k]+1, �� S[k]+1 ��������� �������� i � ������i ����, � ��� ������� A[k+1] �� �������i �������� ������i. � ����� ������� S[k]+1 ���� �i�i������� ������, ��� �� ���������� � ������i ���� ������ �������i� ������i �. I�����, ���� ��� k < N: A[k+1] <= S[k]+1, ��i ����� �i� 1 �� S[k+1] = S[k] + A[k+1] ������ �������������� � ���pi����� ������i, ���i���� ���i���� ����� � ����, �� A[k+1] < B < S[k+1], ����� ����������� � ������i B = A[k+1]+C, �� � < S[k+1]-A[k+1] = S[k], � �� �p��������� C ����� ����������� � ������i ���� ������ �������i� ������i � � ��������� �i� 1 �� k.
(DEFUN INCSUM (n lst)
        ((NULL lst) n)
        ((< n (CAR lst)) n)
        (INCSUM (+ n (CAR lst)) (CDR lst))  )

������: (INCSUM 1 '(1 2 4 6 88)). ����� n ������ ������� ���� 1.
������ 3. ������� ���� ����� ��� �� ��pi��� p������ ��������i ����p� ���� ������. ��������i ������ ����� ��������� ������:
				1 2 3
				4 5 6
				7 8 9
				  0
����i����i��� ���p � ����������� ����pi ������� ���������� ��i��� ���� ����. H��p�����, �i��� ���p� 2 ���� ��� 7 ��� 9, � �i��� ���p� 6 - ���p� 1, 7 ��� 0. ��� �i���i��� ���. ����pi� ��i ����������� �� ���p� N ���� ������ ����, ���� �i����, �� ������� ���������� ����pi� ��pi���� k. H������� �����i� (TELEPHONE_HORSE k N).

�� �p��� ��i���� �� �����i�, ���� ������ p���������i � ���������� ������i:
				1   7
				2   6
				3 4 5
				  8
				9   0

(DEFUN TELHORSE (k num)
  ((ZEROP k) 1)
  ((EQL num 1) (+ (TELHORSE (- k 1) 6) (TELHORSE (- k 1) 8)))
  ((EQL num 2) (+ (TELHORSE (- k 1) 7) (TELHORSE (- k 1) 9)))
  ((EQL num 3) (+ (TELHORSE (- k 1) 4) (TELHORSE (- k 1) 8)))
  ((EQL num 4) (+ (TELHORSE (- k 1) 3) (TELHORSE (- k 1) 9) (TELHORSE (- k 1) 0)))
  ((EQL num 5) 0)
  ((EQL num 6) (+ (TELHORSE (- k 1) 1) (TELHORSE (- k 1) 7) (TELHORSE (- k 1) 0)))
  ((EQL num 7) (+ (TELHORSE (- k 1) 2) (TELHORSE (- k 1) 9)))
  ((EQL num 8) (+ (TELHORSE (- k 1) 7) (TELHORSE (- k 1) 9)))
  ((EQL num 9) (+ (TELHORSE (- k 1) 2) (TELHORSE (- k 1) 4)))
  ((EQL num 0) (+ (TELHORSE (- k 1) 4) (TELHORSE (- k 1) 6)))
)

I��������i �����i�

H���� M - ����� �������. �����i� f, ����������� ��� � ����i�������i �������i� ������� M, � ���������� - �������� ����� ������� N, ���������� i����������, ���� �� �������� �� ����i�������i x[1]..x[n] ����� �������� �� �� ��������� �� ����i�������i x[1]..x[n-1] �� �� x[n], ����� ���� i��� �����i� F � N*M (������� ��� , �� n - ������� ������� N, � m - ������� ������� M) � N, ��� ���
f(x[1],...,x[n]) = F ( f(x[1],...,x[n-1]), x[n])

����� ���������� i��������� �����i�:
  k := 0; f := f0;
  {i����i���: f - �������� �����i� �� (x[1],...,x[k]) }
  while  k <> n do begin
  | k := k + 1;
  | f := F (f, x[k]);
  end;
��� f0 - �������� �����i� �� ��p���i� ����i�������i (����i�������i ������� 0). ���� �����i� f ��������� ���� �� �� ��p���i� ����i���������, �� ������ p���� ���i������ �� k := 1; f := f (x[1]);

�p������ i���������� �����i�

1. f(A) = ���� ����� ������� A.
F(x, y) = x + y;
(DEFUN SUMMA (lst)
	((ATOM (CDR lst)) (CAR lst))
	(SUMMA (CONS (+ (CAR lst) (CADR lst)) (CDDR lst)))  )
2. f(A) = �i�i������ (�����������) ����� ������� A
F(x, y) = min(x, y) ��� max(x, y)
(DEFUN lmin (lst)
       ((ATOM (CDR lst)) (CAR lst))
       ((< (CAR lst) (CADR lst)) (lmin (CONS (CAR lst) (CDDR lst))))
       (lmin (CDR lst))  )
3. g(A, B) - �����p��� ������� �����pi� A �� B, �������� ���� �p���������i ��������� A �� B.
�����i� f(C), �� � = {a1*b1, a2*b2, ..., aN*bN},� i����������.
F(x, y) = x + y
(DEFUN SCALAR (lst1 lst2)
	((NULL lst1) 0)
	(+ (* (CAR lst1) (CAR lst2)) (SCALAR (CDR lst1) (CDR lst2)))  )
������ 1. ���� ��i ����i�������i x[1]..x[n] �� y[1]..y[k] �i��� �����. �������, �� � �p��� ����i����i��� �i�����i����i��� �����, ����� �� ����� � ����� ���p������ ����i ����� ���, ��� ���������� �p���. ������ ��i��� �(n+k).
(DEFUN PIDPOSLID (lst1 lst2)
        ((NULL lst2))
        ((NULL lst1) (NULL lst2))
        ((= (CAR lst1) (CAR lst2)) (PIDPOSLID (CDR lst1) (CDR lst2)))
        (PIDPOSLID (CDR lst1) lst2)  )
�� ����p������ ��, �� ���� x[n1] = y[k1] �� y[1]..y[k1] - �i�����i����i��� x[1]..x[n1], �� y[1]..y[k1-1] - �i�����i����i��� x[1]..x[n1-1].

������ 2. ���� ��i ����i�������i x[1]..x[n] �� y[1]..y[k] �i��� �����. ������ ����������� ������� ����i�������i, ��� � �i�����i����i��� ���� ����i���������. ������ ��i��� - O(n*k).
����'����. ��������� ����� f(n1,k1) ����������� ������� �������� �i�����i�������i ����i��������� x[1]..x[n1] �� y[1]..y[k1]. ���i
   x[n1] <> y[k1] => f(n1,k1) = max (f(n1,k1-1), f(n1-1,k1));
   x[n1] = y[k1]  => f(n1,k1) = max (f(n1,k1-1), f(n1-1,k1),
                              f(n1-1,k1-1)+1 );
���i���� f(n1-1,k1-1)+1 >= f(n1,k1-1), � �p����� ������� �������� ����� ����� ����� ���i���� �� ���� i� ���.
(DEFUN lp (lst1 lst2)
	((OR (NULL lst1) (NULL lst2)) 0)
	((/= (CAR lst1) (CAR lst2)) (MAX (lp lst1 (CDR lst2)) (lp (CDR lst1) lst2)))
	(+ 1 (lp (CDR lst1) (CDR lst2)))  )

�����i� ������

�����i� ������ ��������� ��������� � �������� ����� ������ (COS - Current Output Stream).

1. (PRIN1 obj). ������ ��������� ������������� ��'���� � COS i ������� ��'���. �����i� ����� ������� �������������� �� P-i����. ���� �i��������� ��i��� � �������� �������� ��������. ��i��� *PRINT-POINT* ��������� ����������� �i���i��� ���������� ���� ��� ���������� �� �����i �������.

2. (PRINC obj). ������ �� i PRIN1, ��� P-i���� ���������� � ������������ ���������. �������� ���������� ��i��� *PRINT-ESCAPE* ��� ������� PRINC ��� �i���� T.
  (DEFUN PRINC (obj *PRINT-ESCAPE*)
  (SETQ *PRINT-ESCAPE* T)
  (PRIN1 obj) )
3. (WRITE-BYTE n). ���� n - �i�� ����� �i� 0 �� 255, �� �����i� �������� � COS ������, ASCII-��� ����� ���i���� n, i ������� n.

4. (TERPRI n). ���� n - ���i�'���� �i�� �����, �� � COS ���������� n ������i� ASCII ������ �����. ���� �����i� ��������� ��� ��������i�, n ��������� �i���� 1. ���� �����i� ������� NIL.
(DEFUN TERPRI (n)
((AND (INTEGERP n) (>= n 0))
(LOOP
    ((ZEROP n) NIL)
    (WRITE-BYTE 13)
    (WRITE-BYTE 10)
    (DECQ n)  )  )
5. (PRINT obj) ��� ������ �����i� ����� ��������������� �����i� PRINT. ���� �� ���� ��������. ��� ������� ��� �������� ������������, � ���i� ���������� ���� ��������. ����� ������� ��������� �i��������� �����i� �� ����� �����, � �i��� ������ ��������� ��������� ����i���. ��������� �����i� � �������� ���������. �������� ������� �����i� PRINT � ���� ����������� �������. �����i� PRINT ����� ��������� ���:
(DEFUN PRINT (x)
(TERPRI) (PRIN1 x) (PRINC " ")   )
6. (SPACES n). ������ n ������i� ASCII - ������i� (����i��i�) � COS. ������� �i���i��� ��������� ������i� �i��� ���� �� ���� ��������� ������i� ����� �����.

7. (FRESH-LINE). ���� �� ����������� �� ������� �����, �����i� ������ ������� NIL. I����� ���� ������ � COS ����� ����� i ������� �.

8. (WRITE-STRING ������), (WRITE-LINE ������). � COS ���������� P-i�'� �������. ���� �������� �� � ��������, �����i �����i� ���������� NIL. �����i� WRITE-LINE �i��� ������ ������� � COS ����������� ������ �����i� �� ����� ����� �������� (TERPRI).

9. (SET-CURSOR ����� �������). ��������� ����� ��� �i��� �� ����i� 80*25. �� �����i� ���������� ������ � �i����i��� �����i�.

10. (ROW), (COLUMN). �i����i��� ���������� �������� ����� (��������) ��������� ��������� �������.

11. (CLEAR-SCREEN). ����� �����, ���������� ������ � (0, 0) �� ������� T.

��������� ���'����

�����i��� ����������� ��������� ���'���� ���� ������ �i���i��� ������� i������������� muLisp. ���� �����i�����i ����������� �������i��� ������i���� ���'��� �i� ������, ��� ���� ������������. ���'���, ��� �� ���� ����������������� ���������, �������� ��� ��������� ����� �������� �����.
��� i�i�i��i���i� muLisp ������������ ����i� �������� ���'��i, ��� ���i� ����������� �� 4 ������i:

- ������� ����i� (64�), ��� ��������� ���'��� ��� 4 �������i�-����i����i�, �����i���� ��� ������� ������� �� �����.

- ������� ������i� (128�), ��� ��������� ���'��� ��� ������� �i�� PRINT-i���i ������� (64�) �� ��������� ��i������� ������� ������� ����� (64�).

- ������� ����i����i� (256�), ��� ��������� ���'��� �i� 2 ��������-����i�����, �����i��i ��� ������� cons-� �� �i� D-���, �����i���� ��� ���������� �����i�. ���i���� cons � �������� ���������� ����� �i���, ������� ����i����i� � ����i����� ����� i����.

- ������� ����� (64�), ��� ��������� ���'��� ��� ������������ ����� �� ��i����� �����. �i ��� ����� ����������i �� ����������� �i���� ������i ����i�.

����� ����� ��� ������ i������������� muLisp �����i��� 512� ���� ���'��� �i� DOS.

��i� ��i���

MuLisp �� �������� ����� ��i��� � ����� ����������� (���i��� �� ������). �i� ��� ������� ��������� ���'��i ���i������� ��i ������i ��'���� �����, ������ �� ���� ������������� �����i��� ��������� �� ��������� �������i�- ����i����i�, ��������� � �������i� ������ ������� �� ������������ ��i� ������i� �������, ��� �i ����� ��i����, ��� D-����. ������� � ������������ ����������, ��i �� ����� ������������ �� �������� ��������� �����i�, �� ���i�������. ���i ������� ����������� ����������� �i ������ �i� ��� ������� ���������.

� ������i ������� ��������� ����� ��i��� ��i ���i���i ��'���� ����� ��i��������� �� ���������� � ������ � �i��i� �i����i��� ������i �����. �� �������� �������� ������� �������� ����� ��� ��������� ����� ��'���i�.

����������i� �������� �����

�i��� �������� ��i��� ���i� ��� ���i����� � �������� �������� ����� ���� ��������� �i���� ���'��i ��� ����, ��� �������� ���� ����� ���������� ���������, ���������� �� ��, �� i��i ������i ����� ����� �������� �i���i��� �i���� ���'��i. ���� ������ ���� ������i�, �� ��i��������� ����������i� �������� ����� ������ �i����� ��������, ������� ���'��i, ��� �� �������, ���i� ��� ���i����� ��������. ��� ��������� �� ����i�� ��� ����� ������i �����, ��i ����������� ����, ����� ���� �����������.

����, muLISP ���� ��������� �� ��i�� ����� ������� �� ����i�� �������� �����.

���� ��i� ��i��� �� ����������i� �������� ����� �i���������� �����������, ���� ����� �� ��������� �����i��� ��� �����������, ���i���� ���� ���������� ������� ����� � �����i �������.

����� ���� ���� ��� �������� ��i��� � ����������i�� �������� �i� �i������i ����� � ������i. ��i� ��i��� �������� ����� ����� �������. ����� ��� ��, ����� ������� �������� �i��������� � ����������i� �������� �����. � �i������i, �� �� ������� ��������� �����������, ��� ��� �������i ������ ��������� ����, �� �������������� muLISP, �� ������� �����i��� ����������.

�����, �i���� �� "thrashing" ������ � ���� ���i, ���� ������� ������� ��������� ������������� �i���i��� ���� �� ��i� ��i��� ��� ���� ���������� ���������� ������i �����. ������� "thrashing" � ������ ��������� ���� ��������� ���� �����i. ���� �������� ���� ���� ���i���� ������ ��i������� ����i�� ���'��i ��� (�� 512�) i (���) ���������i� �������� � ����� ��������� �� ����� �� ���'��i.

������ ����������

������ ���������� muLISP ������������ ��������������� ���������� �� ��������������� �������� �������. ���� ����������� ������, �� �i��� ���i�������� ��� ����������� �� ��� ������� �� ����� ������� �������� �i������ � ������i ���i�:

Continue, Break, Abort, Top-level, Restart, System? ���i� ������� ��i��, ������ ���������� ����� ���� � ���i� ������ �������� �� i���i (�,�,�,�,R �� S �i����i���).

�i��������, �� ���i� �����������i � ������� ��������� ����� �i�.

- Continue (����������): ������� ��������� �������i, �� ��������� �����������. ���� �������� ����������� ���� ������� �����������, ������� � ����i�����, �� ��������� ������������, �i�� ����������� �� ����.

���� ����������� �i������� � ���������i �������� �������, ��������, �������� ��� ����������i ��������������� �������, ����������� �� �������� ��������� �����i�;

- Break (�������): ��������� ���������� ��������� �������� � �������� �� ��������� ����i� �i���� ����� "read-eval-print" ("�������-����������-����"). �� �������� ������������i �����i���� ��� (i) ��i���� ������� ���������� muLISP ����� ������������ ��������� ��������. ��� ������ � ������� � �i��������� ������ �������� �����i�� ( RETURN ) �i��� ����� ������;

- Abort (�����������): �������� ��������� ��������, �������� ���������� ����������, ����i����� � ����� ��i����, ��������i �������� � ������� ��������� �� �������� �i���� ����� "read-eval-print". ���������� �����i�, �������� ������������ �� ���������� ��i���� ����������� ����i�����;

- �op-level (�����i� �i����): �������� ��������� ��������, �������� ��������i �������� ���������� ����������, ������������ � ����� ��i����, ����i�� �� ������� ������i ��i��i � ���i��i ���i (CIS �� COS) � ������� ��������� ��������� �i����i ����� "read-eval-print". ���������� �����i�, �������� ������������ �� ���������� ��i���� ����������� ����i�����;

- Restart (��������� �����): ������� ��i �i�����i �����, �i����������� �i� ��������� ���������� muLISP �� i�i�i�� ���� ������� muLISP. ��i ��'���� �i� ��i�����, �����i� �� �������� ������������ � ��������� ���������i muLISP ����������;

- S�stem (�������): ������� ��i �i�����i �����, ������� ��������� muLISP �� ������� ��������� ���i��i� ��.

������� ���������� � ������i

� ����-���� ��� � ���i ��������� �������� i�i�i������ ������������ ������� ���������� � ������i ���� �������� ��������� �������� � ������� ��������� �� �������.

����������� � ������i i�i�i������ ������ ���������� ����i�i 'ESC' �� ����i����i ������i. ���� �� ����i����i ���� ����i�i 'ESC', �� ������ ����������� ���� ���� �'��������� ������ ���������� ����i�i �i�� ����� ([) � ���������� ����������� ����i�i 'CTRL'.

���� � i ��� �� ��������, �� ������ ��� �������i� ���������� � ������i ���� ���� ��i����� ������ �����i���i� Default Readtable ������� ����i��� muLISP.

��� ���������i ����������� � ������i �� �����i ������i ����i������ ���i��������:
Console Interrupt Break: NIL
�� ��� �� ���������� ����� �'��������� �i������ � ������i ���i� �����������. ���������� ���� ���i� ���i����, �� ���������� ������. ���� � ������ ������ ���� �i����i�i �� ����������� � ����i�����, ������� ��i������ ����������� � ������i ������ ������������ ��� (���� �� ������ ��������).

���i�������� ��� �������

� ������ ����i�i ����������� ���i�������� ��� ������� � ������i muLISP,� ����� ���i�, �� � � ������������i ����������� ��� ����i �������. ���� muLISP ������� ���������� ����, ����������� �����i� BREAK. BREAK ���� �i����i��� ���i�������� ��� �������, ���������� ��������� �������� �� ��������� ������������i ���i� ����������� ������ �� ���i�.

����� � �����i����� ������� �������� ���i�������� ��� ������� muLISP:

- DISK FULL (���� ������) : ������, �� ���'��i ��� ����i����� �����, ��������� �� ��������� ����i, �����. ��������� �������� ������������, � ������ ����������� �� ��������. ���i���� ���� ���������� �i�������, � ������i��� ������ � i��i ����� �� ��i� ������i (�� ��������� �����i� EXETUTE ) �� ���������� ����� �� �����;

- END-OF-FILE (�i���� �����): ������, �� ��i������ ������ ������� ���i �� ������ �i��� ��i����� ����� ( CIF ) ��� � ���� ������i� �i���. �i����� �� ���i��������� "end-of-file" ����i������ i�'� CIF � ������i ������ ����: "drive:name.type";

- FILE NOT FOUND (���� �� ��������) : ������, �� ���i���� �� (���) SYS-����, �������� � �������� ��, �� i�i�i���� muLISP, �� ��������, ��� SYS-���� ���i��� ����i�. SYS-���� ���� ���� ������������ �i���� �i� ���������� �i�� ����i� muLISP, �� ��������������� ��� ����i����� �����.

���i��i �� SYS-�����, ��i� ����, ������ ���� ����������i � muLISP � ������������� ������ RDS �� LOAD �i����i���. ���� ���� � ��� ������ �����������, � ���� �� ��������, ���i��� ���i�������� "file not found" ������� ������� ������ NIL;

- INSUFFICIENT ARGUMENTS (���� ��������i�) : ������, �� �����i�, ��� ������� ���������� ���� ��������, ����������� ��� ��������i�. �����i���, ��i ������ ��������� ��� ��� �������, �: MAX, MIN, -, /, ADD1, SUB1, LCM, ABS, SIGNUM, NUMERATOR, DENOMINATOR, FLOOR, CEILING, TRUNCATE, ROUND, MJD, REM, DIVIDE, LOGNOT, BITLENGTH �� SHIFT;

- INSUFFICIENT MEMORY, ABORTING (���� ���'��i, �����������): ������, �� �� �i��� ������� ���'��i ��� ������������ � �����i�������� ���������� muLISP. ������ muLISP ��������������, ��������� ����������� �� ���i��� ��.

�i��������, �� ���������� muLISP, �� ����i������ � SYS-����i, ���� ���� ����������� �� ���, �� �� ������ ��'�� ���'��i, �i� ���, �� ��i� �� ���������� ���� ��������. ������� �� ������ ���'��i ������ �i���� ���i, ���� ���, �� ��i� SYS-���� ��� ������������, �� �����i� �������i� ��'���� ���'��i ��� ����i����� ���������� muLISP. ������ ���� ������������ SYS-����i� - �� ��������� �i������ ��'��� ���'��i ��� ���.

- MEMORY FULL (���'��� ���������) : ������, �� ���'��i ��� ����������� ��������� ������� muLISP �� �������. ��������� ������� ��������������, ������ ����������� �� ��������.

�i����, ������� ��������� ���'���� ��������� ���������� �i���i��� ���'��i ����� ������� ����� ��� ������� ����������� ������ ������� muLISP. ���� ������� � ��'��i ���'��i ��� ����i����� ��'���i� ����� �������� ��i �����i �������, ������ �� �������. ����� � ���i��������� ��� ������� ����i������ ���������� � �������i� ����i:

GC: nnnn aaaa/aaaa vvvv/vvvv pppp/pppp ssss/ssss tttt/tttt

�i�����������i �����, �� ����� �� "GC:", ��������� ����i� ���'��i, �� ���������� � ����i� � �������� 4-� �������� �����. ����, ���� ���� ��������� ������� �����, ���'����� � ��������;

- NONINTEGER ARGUMENT (���i��� ��������) : ������, �� �����i�, ��� ������� �i�i ���������, ��������� � ���i��� ����������. �����i�, ��� ���� �� ������� ���� �����i����, ��: LOGAND, LOGIOR, LOGXOR, LOGNOT, SHIFT �� BITLENGTH;

- NONINTEGER ARGUMENT (���������� ��������) : ������, �� �����i�, ��� ������� ������i ���������, ��������� � ���������� ����������. ���� ������� ���� ��������� ��� ��������� �����i�: =, /=, <, >, <=, >=, MAX, MIN, +, -, *, /, ADD1, SUB1, INCQ, DECQ, GCD, LCM, ABC, SIGNUM, NUMERATOR, DENOMINATOR, FLOOR, CEILING, TRUNCATE, ROUND, MOD, REM �� DIVIDE;

- NONSYMBOLIC ARGUM�NT (������������ ��������) : ������, �� �����i�, ��� ������� ��������i ���������, ��������� � ������������ ����������. �� ����� �����i� �i���������: SET, SETQ, PSETQ, POP, PUSH, INCQ �� DECQ;

- SYNTAX ERROR (����������� �������) : ������, �� �����i� READ �����i�� ��� ����i ����i �����, ��� ������i��� � ��������� ���������i, ���������, (A.) �� (AB.CD). ���i���� ����������� �� ����� �������� ���������� �������� ������ ����� ��� ���, ���� ���� ���� �����i������ ������������- ����������������;

- UNDEFINED FUNCTION (����������� �����i�) : ������, �� ��i������ ������ ������������ �������, �� �� �� ��������� �����i�. ���������� �i��� ��� ����i �i�� ������� �: ���i� ���i� BREAK, ��������� ������������� ������� �� ����������� ���i��� �������� �� ��������� �������: ( RETURN ( EVAL BREAK ))

- ZERO DIVIDE (�i����� �� 0) : ������, �� ���� ��������� �����i� �i����� � �������� �i�������. ������ �����i��� ������ ����: /, FLOOR, CEILING, TRUNCATE, ROUND, MOD, REM �� DIVIDE.

��������

1. (1 ���) �����i� f(x) ��������� ��������� �����:
f(x) = 3*x+1, ���� x - ����p��, x<>1.
f(x) = x/2 , ���� x - ��p��.
���� x = 1, �� ���������� �����i� �����������.
�� ������� ����p������ N �������� ����i����i��� N, f(N), f(f(N)), ..., 1. H������� �����i� (PROBLEM3X n), ��� ����p�� ������� ����p��� ����i�������i.

2. (1 ���) H������� ���������� �����i� f(x) = sin(x) i� ������� �������� EPS (SIN_MY x EPS). ����i���: ���p�������� p�������� ����i� � p�� �����p�.
sin(x) = x - (x^3)/3! + (x^5)/5! - (x^7)/7! + (x^9)/9! - ...

3. (1 ���) �� i��� ���� �����, ��� �i������� � ������� � ����� ��������� ����i��������� ����� lst1, lst2 �� lst3. �����i� (FIND3 lst1 lst2 lst3) ������� ������ �� ����� (���� ���� i���) � ������� ��i���� O(K+L+M), �� K, L, M - ������� �i����i���� ����i���������, i����� ��������� NIL.

4. (2 ����) � �p� ����� ���i��i�. �p���� ���. �� ���� �p�� ������������ ����� ���i���� �i���i��� ���i��i� ���� � ���i�� ����� (�p��� ����'������). ���p� ���, ��� ����p� ������i� ���i����. H������� �����i� ���������� ���� �p���� (NIM a b c), �� a, b, c - �i���i��� ���i��i� � ������. �����i� ������� ����p���� ���� (x.y), �� x - ����p �����, � ��� �p���, y - �i���i��� ������ ���i��i�.

����'���� 4. ���������� �������� Z = a XOR b XOR c. ���� Z <> 0, �� �� ������ ������ �p����� ����� �p��, ��� Z = 0. �i��� ����� �� �� �� ����� ����'���p, �i��� ���� ���� �������� Z ��i������ i �� ���� ��pi������� 0. �� ����� ������ ���, ��� Z = 0. ���i���� ���p����� �����i�� � 0 0 0, ����� Z = 0 XOR 0 XOR 0 = 0, �� �p��p�������� ����� ����p����, �� ������ ���p���. ���� �p� ������ ���i Z = 0, � ����'���p ��� ���p���� ��p����i�, �� ��������� �i� ������ ����, ����'���p ���p�.
3 = 011	3 XOR 2 = 1, 1<3 -> ����� �p��� � ����� 2 ���i���
4 = 100	4 XOR 2 = 6, 6>4 -> �p��� �� �����
5 = 101 5 XOR 2 = 7, 7>5 -> �p��� �� �����
-XOR---
2 = 010
����, ���� �� �i������ 2 ���i��� � ��p�� �����, �� ���������� 1 4 5,
Z = 1 XOR 4 XOR 5 = 001 XOR 100 XOR 101 = 0, �� ��� i �p���.