Функції модифікатора, Детальна інформація

Функції модифікатора
Тип документу: Реферат
Сторінок: 5
Предмет: Комп`ютерні науки
Автор: Олексій
Розмір: 0
Скачувань: 834
((OR (NOT (ATOM ATM1)) (NOT (ATOM ATM2))) NIL)

((PLUSP N)

((NULL (FINDSTRING ATM1 (SUBLIST ATM2))) NIL)

(+ N (FINDSTRING ATM1 (SUBLIST ATM2 N))) )

((якщо ATM1 є підрядком ATM2)

(позиція ATM1, на якій воно вперше зустрічається у ATM2) ) )

$ (FINDSTRING ‘BC ‘ABCDEFG) (FINDSTRING ‘abc ‘abdeabcde)

1 4

10. PRINT-LENGTH . Повертає кількість символів в P - імені атома з урахуванням значень контрольних змінних *PRINT-BASE* та *PRINT-ESCAPE*.

$ (DEFUN PRINT-LENGTH (atm)

((ATOM atm) (LENGTH (UNPACK atm)))

$ (PRINT-LENGTH ‘Mulisp)

6

$ (PRINT-LENGTH -156) $ (PRINT-LENGTH NIL)

4 3

Розглянемо функцію, яка для заданого атома знаходить максимальну кількість літер, яка в ньому йде підряд. Повернути конс, який складається з літери та числа. Наприклад, для атома a22eeerty повернути (e . 3).

(DEFUN symmax (atm) $ (symmax ‘a22eeerty)

((NOT (ATOM atm)) NIL) (e . 3)

(SETQ lst (UNPACK atm) endel (ASCII 0) endct 0) $ (symmax ‘nil)

(LOOP (n . 1)

((NULL lst)) $ (symmax 1222334)

(SETQ el (CAR lst) ct 0) (\2 . 3 )

(LOOP

((NOT (EQL (CAR lst) el)))

(POP lst)

(INCQ ct) )

(IF (> ct endct) (SETQ endct ct endel el)) )

(CONS endel endct) )

The online video editor trusted by teams to make professional video in minutes