игра брюс 2048
Главная / Программирование / Основы функционального программирования / Тест 8

Основы функционального программирования - тест 8

Упражнение 1:
Номер 1
В каком определении имеются свободные переменные?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT(LAMBDA(X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X ))) 

 (3) (lambda (v) (cons 'ATOM (eq 'COND v))) 


Номер 2
В какое определение входят свободные переменные?

Ответ:

 (1) (defun YDOT(LAMBDA(X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X))) 

 (2) (lambda (v) (assoc X N v)) 

 (3) (lambda (v) (cons 'ATOM (eq 'COND v))) 


Номер 3
В каком определении функция зависит от свободных переменных?

Ответ:

 (1) (defun YDOT(LAMBDA(X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X))) 

 (2) (lambda (v)(list N v X (E A))) 

 (3) (lambda (v) (cons 'ATOM (eq 'COND v))) 


Упражнение 2:
Номер 1
Какое из определений не содержат свободных переменных?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT(LAMBDA(X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X)))  

 (3) (lambda (v) (assoc X N v)) 


Номер 2
В какое из определений не входят свободные переменные?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun MAP(LAMBDA(L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN))))))  

 (3) (lambda (v) (assoc X N v)) 


Номер 3
Какое из определений функций не зависит от свободных переменных?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (lambda (v) (cons 'ATOM (eq 'COND v))) 

 (3) (lambda (v) (assoc-i X N v)) 


Упражнение 3:
Номер 1
Какое из приведенных определений требует при компиляции информации о типе свободных переменных?

Ответ:

 (1) (LAMBDA (A) (PROG (B С) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) ))  

 (2) (defun YDOT(LAMBDA(Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X)))  

 (3) (defun MAP(LAMBDA(L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN))))))  


Номер 2
Компиляция какого из приведенных определений требует информации о типе свободной переменной?

Ответ:

 (1) (LAMBDA (A) (PROG (B С) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) ))  

 (2) (defun MAP(LAMBDA(L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN))))))  

 (3) (lambda (v) (assoc X N v)) 


Номер 3
Какое из приведенных определений можно компилировать без информации о типе свободной переменной

Ответ:

 (1) (LAMBDA (A) (PROG (B С) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT(LAMBDA(Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X)))  

 (3) (lambda (v) (assoc X N v)) 


Упражнение 4:
Номер 1
Какое из определений содержит функциональные переменные?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT(LAMBDA(X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X)))  

 (3) (defun MAP(LAMBDA(L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN))))))  

 (4) (lambda (v) (assoc X N v)) 


Номер 2
Какое из определений не содержит функциональных переменных?

Ответ:

 (1) (LAMBDA (A Fn) (PROG (B) S (SETQ B A) (SETQ C (CONS (Fn A) C)) (GO S) ))  

 (2) (defun YDOT(LAMBDA(X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X)))  

 (3) (defun MAP(LAMBDA(L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN))))))  


Номер 3
Какое из определений не использует функциональных переменных?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) ) 

 (2) (defun YDOT(LAMBDA(X Y FN)(MAPCAR FN X Y)))))) 

 (3) (defun MAP(LAMBDA(L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN)))))) 


Упражнение 5:
Номер 1
Какое из приведенных определений требуют понимания переменных как функций?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT(LAMBDA(X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X)))  

 (3) (defun MAP(LAMBDA(L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN)))))) 

 (4) (lambda (v) (funcall (cond (((E P)v)(E S1))(T(E S2)) ) v) 


Номер 2
В каком из приведенных определений переменные понимаются как функции?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT(LAMBDA(X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X)))  

 (3) (lambda (v) (funcall (cond (((E P)v)(E S1))(T(E S2)) ) v) 

 (4) (lambda (w) ((lambda (v)(cond ( (w 'E v) 'S)(T v)))) 


Номер 3
Какие из определений содержит безымянную функциональную константу?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT(LAMBDA(X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X)))  

 (3) (defun MAP(LAMBDA(L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN)))))) 

 (4) (lambda (v) (funcall (cond ((E P)S1) (T(E S2)) ) v) 


Упражнение 6:
Номер 1
Какое из определений не содержит безымянных функций?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) ))  

 (2) (defun YDOT (X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X)))  

 (3) (lambda (v) (funcall (lambda (x) (cons x x)) v) 


Номер 2
В какое из определений не входят безымянные функции?

Ответ:

 (1) (defun YDOT (X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X)))  

 (2) (defun MAP (L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN))))))  

 (3) (lambda (v) (funcall (lambda (x) (cons x x)) v) 


Номер 3
Какое из определений не содержит безымянных функций?

Ответ:

 (1) (defun YDOT (X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X))) 

 (2) (lambda (v) (funcall (lambda (x) (cons x x)) v) 

 (3) (defun fn (v) (funcall (cond ((EQ P v)(print S1)) ) v) 


Упражнение 7:
Номер 1
Какое из приведенных определений не зависит от функциональных переменных или безымянных функций?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT (X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X))) 

 (3) (defun MAP (L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN)))))) 


Номер 2
Какое из приведенных определений не зависит от функциональных аргументов или безымянных функций?

Ответ:

 (1) (defun YDOT (X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X))) 

 (2) (defun MAP (L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN)))))) 

 (3) (defun fn (v) (cond ((EQ P v)(print S1)) (T(EQ v S2)) ) v) 


Номер 3
В каком из приведенных определений вхождение функциональной переменной малосущественно, т.к. она не используется как функция?

Ответ:

 (1) (defun MAPF(LAMBDA(L FN)(COND ((NULL L)NIL)(T(LIST FN L (MAP(CDR L)FN)))))) 

 (2) (defun YDOT (X Y)(MAPLIST (FUNCTION(LAMBDA(J)(CONS(CAR J)Y))) X))) 

 (3) (defun MAP (L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN)))))) 


Упражнение 8:
Номер 1
В каких определениях имеются свободные переменные?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (lambda (v) (assoc-i X N v)) 

 (3) (lambda (v)(replace N v X (E A))) 

 (4) (lambda (v) (cons 'ATOM (eq 'COND v))) 

 (5) (defun YDOT (X Y)(MAPLIST X(FUNCTION(LAMBDA(J)(CONS(CAR J)Y))))) 


Номер 2
Какие из определений не содержат свободных переменных?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT (X Y)(MAPLIST X(FUNCTION(LAMBDA(J)(CONS(CAR J)Y))))) 

 (3) (defun MAP (L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN))))) 

 (4) (lambda (v) (assoc-i X N v)) 


Номер 3
Какие из приведенных определений вызывают при компиляции обработку свободных переменных?

Ответ:

 (1) (LAMBDA (A) (PROG (B С) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT (Y)(MAPLIST X(FUNCTION(LAMBDA(J)(CONS(CAR J)Y))))) 

 (3) (defun MAP (L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN))))) 

 (4) (lambda (v) (assoc-i X N v)) 


Упражнение 9:
Номер 1
Какие из определений содержат функциональные переменные?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT (X Y)(MAPLIST X(FUNCTION(LAMBDA(J)(CONS(CAR J)Y))))) 

 (3) (defun отобр (список ФН)(COND ((NULL список)NIL)(T(CONS(ФН список)(MAP(CDR список)FN))))) 


Номер 2
Какие из определений не содержат функциональных переменных?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT (X Y)(MAPLIST X(FUNCTION(LAMBDA(J)(CONS(CAR J)Y))))) 

 (3) (defun MAP (L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN))))) 


Номер 3
Какие из приведенных определений могут вызывать при компиляции обработку функциональных переменных?

Ответ:

 (1) (LAMBDA (A) (PROG (B) S (SETQ B A) (SETQ C (CONS (CAR A) C)) (GO S) )) 

 (2) (defun YDOT (X Y)(MAPLIST X(FUNCTION(LAMBDA(J)(CONS(CAR J)Y))))) 

 (3) (defun MAP (L FN)(COND ((NULL L)NIL)(T(CONS(FN L)(MAP(CDR L)FN))))) 

 (4) (lambda (w) ((lambda (v)(cond ( (w 'E v) 'S)(T v)))) 




Главная / Программирование / Основы функционального программирования / Тест 8