Das ist ein zeitlich begrenztes Quiz.
Du hast 50 Minuten um die 44 Fragen in diesem Quiz zu beantworten.
Se dă funcţia F(X) definită astfel. (DEFUN F(X) (* X (F (- X 1)))) Care este rezultatul evaluării formei (F 4)?
calculează factorialului lui 4.
calculează al patrulea element al şirului lui Fibonacci
rezultă o depăşire a stivei datorită recursivităţii infinite
sunt erori de sintaxă •
Să se determine rezultatul obţinut în urma evaluarii următoarelor forme: (SETQ B 10) (SETQA 11) (DEFUN F() (LET ((A 3)) (SETQ A (+ A B)) (PRINT A))) (F) (PRINŢ A) (PRINŢ B)
21 11 10
13 11 10
13 13 10
Eroare
Pentru a citi un fişier, se va utiliza funcţia.
LOAD
READ
RUN
OPEN
Ce efect are evaluarea următoarelor forme: (SETQX 10) (SETQ Y (FORMAT NIL "VALOAREA ESTE ~S" X))
setează Y la NIL şi afişează "VALOAREA ESTE 10"
setează Y la "VALOAREA ESTE 10" şi nu afişează nimic
setează Y la NIL şi afişează "VALOAREA ESTE X"
setează Y la "VALOAREA ESTE X" şi nu afişează nimic
Care este rezultatul evaluării formei: (LIST 'PROGRAMARE (APPEND '(LIMBAJUL) '(LISP)))
((PROGRAMARE) (LIMBAJUL LISP))
(PROGRAMARE LIMBAJUL LISP)
((PROGRAMARE) LIMBAJUL LISP)
(PROGRAMARE (LIMBAJUL LISP))
Se dau formele: (SETQ L '(1 2 3)) (SETQ LISTA (POP L)) Care este rezultatul evaluării lui L şi LISTA?
L = (1 2 3) LISTA = 1
L = (2 3) LISTA = 1
L=(1 2) LISTA = 3
L=(1 2 3) LISTA=3
Fiind dată forma: (SETQ X '(A B C)) / Care este rezultatul obţinut în urma evaluării formei: ‘(,X V Z)
(XVZ)
(ABCYZ)
((A B C) Y Z)
NIL
Se consideră următoarele forme: (SETQ X 10) (DEFVAR *Y* 20) (DEFUN F1(X) (PRINŢ X) (PRINŢ *Y*)) (DEFUN F2(*Y*) (PRINŢ *Y*) (F1 (+ X 5))) Ce se afişează în urma evaluării formei: (F2 1)
1 15 20
1 15 15
20 15 15
1 15 1
Se consideri funcţia F, definită astfel: (DEFUN FO (+ 10 20) T NIL) Care din următoarele afirmaţii sunt adevărate?
funcţia nu este corect definită
evaluarea formei (F) întoarce valoarea T
evaluarea formei (F) întoarce valoarea NIL
evaluarea formei (F) întoarce valoarea 30
Pentru a citi o s-expresie de la tastatură, ce funcţie trebuie utilizată?
SCANF
INPUT
Care din următoarele funcţii afişează o linie nouă?
PRINTLN
TERPRI
PRINTF
NEWL
Care este rezultatul obţinut în urma evaluării formei: (CAR (CDR '((A B) (C D))))
(C D)
(A B)
A
C
Se consideră următoarea formă: (SETQ L '(A B CM Care este conţinutul listei L după evaluarea formei: (SETF (CADR L) Z)
(A Z B)
(A Z C)
(A B C)
(Z B C)
Care este valoarea memorată în X după evaluarea următoarelor expresii: (SETQ X 10) (+X1)
11
1
101
10
Se dau următoarele forme: (SETQ X '(A B C)) (SETQ Y '(A B C)) (EQXY) Ce se retumează după evaluarea ultimei expresii?
T
Care este valoarea memorată în X după evaluarea următoarelor expresii: (SETQ X 10) (INCF X)
0
Rezultatul obţinut în urma evaluării formei (CONS ’A ’B) este:
eroare, deoarece B nu este listă
(A . B)
Fie lista L = (A B C). Care este efectul evaluării formei: (LET ((ELEM (FIRST L))) (SETF L (REST L)) ELEM)
B. Forma este echivalenta cu macro-ul POP
Forma este echivalenta cu macro-ul PUSH
Este intors primul element al listei L
Fie funcţia F, definită astfel: (DEFUN F(L) (COND ((ATOM L) 1) (T (+ (F (CAR L)) (F (CDR L)))))) Ce se obţine în urma evaluării formei: (F ‘(A B C))
3
4
Care este rezultatul obţinut în urma evaluării formei: (REDUCE #'APPEND '((A B) (C D) (E F)))
(A B C D E F)
eroare
((A B) (C D) (E M
(((A B) (C D) (E F)))
Care este valoarea obţinută în urma evaluării formei: (TEST 'P 3)?
(P (P) P)
((P)P(P))
(P P P)
Care este valoarea obţinută în urma evaluării formei: (TEST 99 4)?
((99) 99 (99) 99)
((99) (99) (99) (99))
(99 99 99 99)
(99 (99) 99 (99))
Care este valoarea obţinută în urma evaluării formei: ((LAMBDA (A B) (COND ((> A B)(- A B))(T (- B A)))) 3 7)
7
5
Care este valoarea formei: ((LAMBDA (CAR CDR) (CONS CAR CDR)) '(1 2 3) '(P Q R))?
(12 3 (P Q R))
(1 2 3 P Q R)
((1 2 3) (P Q R))
((1 2 3) P Q R
Fie funcţia: (DEFUN SUM (LIST) (COND ((NULL LIST) 0) ((>= (SUM (CDR LIST)) 0) (SUM (CDR LIST)) ) (T-1) ) ) Care este valoarea obţinută în urma evaluării formei: (SUM '(1 2 -5 -1 3))?
6
Care este rezultatul evaluării formei (FEXEC '(1 2) ‘(8 7 6 5 4 3 2 1))?
(D C)
(A A)
Ce se obţine în urma evaluării formei: (FEXEC ‘(P Q R) '(S T U))?
(S T U)
(S T U P Q R)
(P Q R)
(P Q R S T U)
Care sunt valorile evaluării fiecărei dintre următoarele forme? (FUNCALL *> ‘(55 33))
F
Care sunt valorile evaluării fiecărei dintre următoarele forme? (FUNCALL > 55 33)
Care sunt valorile evaluării fiecărei dintre următoarele forme? (APPLY '> '(55 33))
Care sunt valorile evaluării fiecărei dintre următoarele forme? (APPLY > 55 33)
Care sunt valorile evaluării fiecărei dintre următoarele forme? (EVAL’>’55 33)
Care sunt valorile evaluării fiecărei dintre următoarele forme? (EVAL ’> 55 33)
Fie funcţia: (DEFUN SUMA (LIST) (COND ((EQ (LENGTH LIST) 1) (CAR LIST) .. ) (T (+ (CAR LIST) (SUMA (CDR LIST))) ) ) )
Care este rezultatul evaluării formei: (SUMA ‘(1 2 5—1 3))?
15
Se dă funcţia: (DEFUN XXX (H R C) (COND ((NULL H) NIL) ((EQ (CAR H) C) (CAR R) ) (T (XXX (CDR H) (CDR R) O) ) ) H HH Care este rezultatul evaluării formei: (XXX '(A B C) '(1 2 3) ‘C)?
2
Rezultatul evaluării formei (LIST '(P Q) '(S T)j este:
(PQST)
((P Q) (S T))
Care este rezultatul evaluării formei: (CAR '(((A)) B C)):
(A)
((A))
Rezultatul evaluării formei (CAR (A B C)) este:
(B C)
Rezultatul evaluării formei (CONS ‘(P Q) (CDR ‘(A B C))) este:
((P Q) B C)
(P Q B C)
(P Q (B O)
Rezultatul evaluării formei (APPEND ‘(CAR (X Y)) '(A B C)) este:
(X Y A B C)
((X Y) A B C)
(CAR (X Y) A B C)
Se defineşte funcţia: (DEFUN MISTER (A B) (COND ((NULL A) 0) ((EQUAL B (CAR A)) (+ 1 (MISTER (CDR A) B)) ) (T (MISTER (CDR A) B)) ) Ea returnează:
de câte ori apare A în lista B
de câte ori apare B în lista A
Se consideră definiţia funcţiei F: (DEFUN F (A L) (COND ((NULL L) T) ((EQ A (CAR L)) NIL) (T (F A (CDR L))))) Care este rezultatul întors la evaluarea formei: (F 'B '((A B) C))
Eroare, funcţia nu este definită corect
Care este efectul următorului macro: > (DEFMACRO TEST (X) (LIST ’LET '((S 0)) (LIST 'DOLIST (LIST ’l X) *(SETQ S (+ S I))) ’S)) TEST
obţinerea unei expresii ce va putea fi apoi evaluată;
adunarea tuturor valorilor din lista argument (de intrare);
adunarea valorilor 1+2+3+...+n, unde n este numărul elementelor din lista transmisă ca argument;
nici un răspuns nu este corect.
Să se indice dacă următoarea afirmaţie este adevărată sau falsă: Nu se pot compila programele Lisp deoarece limbajul Lisp este interpretat.
adevărat
fals