This shows you the differences between two versions of the page.
|
pp:23:laboratoare:racket:intro [2023/02/27 12:16] bot.pp created |
pp:23:laboratoare:racket:intro [2023/03/07 05:37] (current) gabriel.pavaloiu [Perechi] |
||
|---|---|---|---|
| Line 158: | Line 158: | ||
| (cons 1 2) ; construiește perechea (1 . 2) | (cons 1 2) ; construiește perechea (1 . 2) | ||
| - | (car (cons 1 2)) ; întoarce primul element din pereche, adică 1 (cdr (cons 1 2)) ; întoarce al doilea element din pereche, adică 2 | + | (car (cons 1 2)) ; întoarce primul element din pereche, adică 1 |
| + | |||
| + | (cdr (cons 1 2)) ; întoarce al doilea element din pereche, adică 2 | ||
| (cons 3 (cons 1 2)) ; construiește PERECHEA (3 . (1 . 2)) (primul element al perechii este un număr, al doilea este o pereche) | (cons 3 (cons 1 2)) ; construiește PERECHEA (3 . (1 . 2)) (primul element al perechii este un număr, al doilea este o pereche) | ||
| Line 200: | Line 202: | ||
| (car (cdr '(1 2 3 4 5))) ; întoarce 2 | (car (cdr '(1 2 3 4 5))) ; întoarce 2 | ||
| (cdr (car '(1 2 3 4 5))) ; cum (car list) nu întoarce o listă, ci un element, apelul produce eroare; funcția cdr așteaptă liste ca parametru | (cdr (car '(1 2 3 4 5))) ; cum (car list) nu întoarce o listă, ci un element, apelul produce eroare; funcția cdr așteaptă liste ca parametru | ||
| - | (cdr (cdr '(1 2 3 4 5))) ; întoarce (3 4 5)` `(car (cdr (cdr '(1 2 3 4 5))) ; întoarce 3 | + | (cdr (cdr '(1 2 3 4 5))) ; întoarce (3 4 5) |
| + | (car (cdr (cdr '(1 2 3 4 5))) ; întoarce 3 | ||
| </code> | </code> | ||
| Line 300: | Line 303: | ||
| <code lisp> | <code lisp> | ||
| - | ; (if testexp thenexp elseexp) ; sau fără bucata de else | + | ; (if testexp thenexp elseexp) |
| (if (< a 0) | (if (< a 0) | ||
| a ; întoarce a dacă a este negativ | a ; întoarce a dacă a este negativ | ||