Symbolické programovanie a LISP, zima 2000/2001

(vychádza z prednášky Funkcionálne programovanie, Ivan Kalaš)
Petrovič Pavol, Ústav Informatiky, č.d. 15
e-mail: ppetrovi@dent.ii.fmph.uniba.sk
www k prednáške: http://www.ii.fmph.uniba.sk/vyuka/lisp

1.cvičenie

  1. Zadefinujte konštantu pi.
    (define pi ...
  2. Zadefinujte nulárnu funkciu pi2, ktorá vráti hodnotu pi.
    (define (pi2) ...
  3. Zadefinujte unárne funkcie add1, sub1, 1+, 1-, ktoré pripočítavajú, resp. odpočítavajú 1.
    (define (add1 n) ...
    (define (sub1 n) ...
    (define (1+ n) ...
    (define (1- n) ...
  4. Zadefinujte unárnu funkciu fact, ktorá vráti faktoriál čísla n.
    (define (fact n) ...
  5. Zadefinujte unárnu funkciu fact2, ktorá vráti faktoriál čísla n. Implementujte iteratívnu verziu.
    (define (fact2 n) ...
  6. Zadefinujte binárnu funkciu na, ktorá vráti n-tú mocninu čísla a.
    (define (na a n) ...
  7. Zadefinujte binárnu funkciu na2, ktorá vráti n-tú mocninu čísla a. Implementujte iteratívnu verziu.
    (define (na2 a n) ...
  8. Zadefinujte binárnu funkciu na3, ktorá vráti n-tú mocninu čísla a. Implementujte rýchlu verziu (a^(2n) = (a^n)^2).
    (define (na3 a n) ...
  9. Zadefinujte unárnu funkciu nuly, ktorá vráti počet núl na konci čísla n!.
    (define (nuly n) ...

 

Last Updated on 21-Sep-2000
By Petrovic Pavol
E-mail: ppetrovi@dent.ii.fmph.uniba.sk