BuK/IIm11/Studenten/sirorose/uebung5

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Scheme</language>
= Aufgabe 1 =

Funktionsdefinition Vorgänger (total) :  $ f(n) = n - 1$

Funktionsdefinition Vorgänger (partiell) : $$ f(n) = \begin{cases}
n - 1 ; & \text{für } n \in \N \setminus \{1234, 7266281\};\\
\bot; & sonst
\end{cases}
$$

Funktionsdefinition Halbiering (total) :  $ f(n) = n / 2$

Funktionsdefinition Vorgänger (partiell) : $$ f(n) = \begin{cases}
n / 2 ; & \text{für } n \in \N \setminus \{1234, 7266281\};\\
\bot; & sonst
\end{cases}
$$


<code id="4f9683759398b">(define vorgaenger
  (lambda (n)
    (- n 1)))

(define halbierung
  (lambda (n)
    (/ n 2)))

(define vorgaenger_partiell
  (lambda (n)
    (cond
      ((or (= n 1234) (= n 7266281)) (vorgaenger_partiell n))
      (else (vorgaenger n)))))

(define halbierung_partiell
  (lambda (n)
    (cond
      ((or (= n 1234) (= n 7266281)) (halbierung_partiell n))
      (else (halbierung n)))))</code>
<run id="4f968375939f3">(halbierung_partiell 1234)</run>