.

Функції виводу (реферат)

Язык: украинский
Формат: реферат
Тип документа: Word Doc
0 1593
Скачать документ

Реферат на тему:

Функції виводу

Функції виводу передають результат в поточний поток виводу (COS –
Current Output Stream).

1. (PRIN1 ). Передає символьне представлення об’єкту в COS і
повертає об’єкт. Функція друкує символи використовуючи їх P-імена. Друк
відбувається згідно з поточною системою числення. Змінна *PRINT-POINT*
контролює максимальну кількість десяткових цифр для зображення на екрані
дисплею.

2. (PRINC ). Працює як і PRIN1, але P-імена виводяться з
контрольними символами. Значення контрольної змінної *PRINT-ESCAPE* при
виклику PRINC стає рівним T.

(DEFUN PRINC (obj *PRINT-ESCAPE*)

(SETQ *PRINT-ESCAPE* T)

(PRIN1 obj) )

3. (WRITE-BYTE n). Якщо n — ціле число від 0 до 255, то функція виводить
в COS символ, ASCII-код якого дорівнює n, і повертає n.

4. (TERPRI n). Якщо n — невід’ємне ціле число, то в COS передається n
символів ASCII нового рядка. Якщо функція викликана без аргументів, n
вважається рівним 1. Сама функція повертає NIL.

(DEFUN TERPRI (n)

((AND (INTEGERP n) (>= n 0))

(LOOP

((ZEROP n) NIL)

(WRITE-BYTE 13)

(WRITE-BYTE 10)

(DECQ n) ) )

5. (PRINT ) Для виводу виразів можна використовувати функцію PRINT.
Вона має один аргумент. При виклику цей аргумент обчислюється, а потім
виводиться його значення. Перед виводом аргумента відбувається перехід
на новий рядок, а після виводу аргумента друкується проміжок. Значенням
функції є значення аргумента. Побочним ефектом функції PRINT є друк
повертаємого знчення. Функцію PRINT можна визначити так:

(DEFUN PRINT (x)

(TERPRI) (PRIN1 x) (PRINC “ “) )

6. (SPACES n). Передає n порожніх ASCII – символів (проміжків) в COS.
Повертає кількість переданих символів після того як буде переданий
останній новий рядок.

7. (FRESH-LINE). Якщо ми знаходимося на початку рядка, функція просто
повертає NIL. Інакше вона передає в COS новий рядок і повертає Т.

8. (WRITE-STRING ), (WRITE-LINE ). В COS виводиться
P-ім’я символа. Якщо аргумент не є символом, обидві функції повертають
NIL. Функція WRITE-LINE після виводу символа в COS автоматично виконує
перехід на новий рядок командою (TERPRI).

9. (SET-CURSOR a (mas list x)) (INCQ res))

(INCQ x)

)) )

4. $ (DEFUN CYCLES (lst) $ (DEFUN ISPLUS (lst t1)

(SETQ a 0) ((NULL lst) NIL)

(LOOP ((> (CAR lst) 0) t1)

(SETQ t1 (ISPLUS lst 1)) (ISPLUS (CDR lst) (+ t1 1)) )

((NOT t1))

(INCQ a)

(LOOP

((> 0 (MAS lst (- t1 1))))

(SETQ lst (change lst (- t1 1) (- (mas lst (- t1 1)))))

(SETQ t1 (- (mas lst (- t1 1)))) )

) a )

5. $ (DEFUN PRSQ (n) $ (DEFUN PRSQOPT (n)

(SETQ i 0) (SETQ k 0 ksq 0)

(LOOP (WRITE ksq) (SPACES 1)

((> i n)) (LOOP

(WRITE (* i i)) (SPACES 1) ((= k n ))

(INCQ i) (INCQ k) )

) ) (INCQ ksq (SUB1 (+ k k)))

(WRITE ksq) (SPACES 1)

) )

6. a) $ (DEFUN MATR_GET (m i j) в) $ (DEFUN GENMATR0 (i j)

(LOOP (SETQ lst (gen0 j) res NIL)

((ZEROP i) (SETQ m (CAR m))) (LOOP

(POP m) ((ZEROP i) res)

(DECQ i) (PUSH lst res)

) (DECQ i)

(LOOP )

((ZEROP j) (CAR m))

(POP m)

(DECQ j)

) )

б) $ (DEFUN MATR_CHANGE (m i j value) г) $ (DEFUN PMATR (m nx ny)

(SETQ head NIL) (SETQ i 0 j 0)

(LOOP (LOOP

((ZEROP i)(SETQ current (CAR m) t (CDR m))) ((= i nx))

(PUSH (POP m) head) (SETQ j 1)

(DECQ i) (LOOP

) ((= j ny))

(SETQ current (CHANGE current j value)) (WRITE (matr_get m i j))
(SPACES 2)

(PUSH current t) (INCQ j)

(LOOP )

((NULL head) t) (TERPRI 1)

(PUSH (POP head) t) (INCQ i)

) ) ) )

Нашли опечатку? Выделите и нажмите CTRL+Enter

Похожие документы
Обсуждение

Оставить комментарий

avatar
  Подписаться  
Уведомление о
Заказать реферат!
UkrReferat.com. Всі права захищені. 2000-2020