<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.mafiasi.de/index.php?action=history&amp;feed=atom&amp;title=P1-WS04-MusterLoesung10.txt</id>
	<title>P1-WS04-MusterLoesung10.txt - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.mafiasi.de/index.php?action=history&amp;feed=atom&amp;title=P1-WS04-MusterLoesung10.txt"/>
	<link rel="alternate" type="text/html" href="https://wiki.mafiasi.de/index.php?title=P1-WS04-MusterLoesung10.txt&amp;action=history"/>
	<updated>2026-10-18T09:50:36Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Fachschaft Informatik</subtitle>
	<generator>MediaWiki 1.46.2</generator>
	<entry>
		<id>https://wiki.mafiasi.de/index.php?title=P1-WS04-MusterLoesung10.txt&amp;diff=3201&amp;oldid=prev</id>
		<title>PatrickFey: 1 Versionen</title>
		<link rel="alternate" type="text/html" href="https://wiki.mafiasi.de/index.php?title=P1-WS04-MusterLoesung10.txt&amp;diff=3201&amp;oldid=prev"/>
		<updated>2007-11-05T05:50:15Z</updated>

		<summary type="html">&lt;p&gt;1 Versionen&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 5. November 2007, 05:50 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-notice&quot; lang=&quot;de&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(kein Unterschied)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>PatrickFey</name></author>
	</entry>
	<entry>
		<id>https://wiki.mafiasi.de/index.php?title=P1-WS04-MusterLoesung10.txt&amp;diff=3200&amp;oldid=prev</id>
		<title>81.177.14.26 am 5. November 2007 um 05:50 Uhr</title>
		<link rel="alternate" type="text/html" href="https://wiki.mafiasi.de/index.php?title=P1-WS04-MusterLoesung10.txt&amp;diff=3200&amp;oldid=prev"/>
		<updated>2007-11-05T05:50:15Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
	P1 Übungen WS2004/2005&lt;br /&gt;
	Musterlösung 10 (Martin Burmester)&lt;br /&gt;
&lt;br /&gt;
Aufgabe 1.)&lt;br /&gt;
&lt;br /&gt;
; (a)&lt;br /&gt;
&lt;br /&gt;
(define (ostersonntag j)&lt;br /&gt;
  (let*&lt;br /&gt;
  ; 1. Argument vom let*. Berechnen wir a,b,c,d,e,m,&lt;br /&gt;
      &lt;br /&gt;
  ((a (remainder j 19) )&lt;br /&gt;
   (b (remainder j 4)  )&lt;br /&gt;
   (c (remainder j 7)  )&lt;br /&gt;
   (m (cond ((&amp;lt;= 1800 j 1899)    23)&lt;br /&gt;
            ((&amp;lt;= 1900 j 2099)    24)&lt;br /&gt;
            ((&amp;lt;= 2100 j 2199)    24)&lt;br /&gt;
            (else                (error &amp;quot;year out of range!&amp;quot;))))&lt;br /&gt;
   (n (cond ((&amp;lt;= 1800 j 1899)    4)&lt;br /&gt;
            ((&amp;lt;= 1900 j 2099)    5)&lt;br /&gt;
            ((&amp;lt;= 2100 j 2199)    6)&lt;br /&gt;
            (else                (error &amp;quot;year out of range!&amp;quot;))))&lt;br /&gt;
   (d (remainder (+ (* 19 a) m)&lt;br /&gt;
                 30))&lt;br /&gt;
   (e (remainder (+ (* 2 b)&lt;br /&gt;
                    (* 4 c)&lt;br /&gt;
                    (* 6 d)&lt;br /&gt;
                    n)&lt;br /&gt;
                 7))&lt;br /&gt;
   (april_day0 (+ d e -9))&lt;br /&gt;
   (april_day (cond ((= april_day0 26)  19)&lt;br /&gt;
                    ((and (= april_day0 25)&lt;br /&gt;
                          (= d 28)&lt;br /&gt;
                          (= e 6)&lt;br /&gt;
                          (&amp;gt;= a 10))&lt;br /&gt;
                                        18)&lt;br /&gt;
                    (else               april_day0)))&lt;br /&gt;
   (march_day (+ 22 d e)))&lt;br /&gt;
&lt;br /&gt;
   ; 2. Argument vom let*. Nun haben wir alles!&lt;br /&gt;
   ;&lt;br /&gt;
   ; 1. Versuch:&lt;br /&gt;
   ; (list march_day &amp;#039;maerz j &amp;#039;oder april_day &amp;#039;april j)&lt;br /&gt;
   ; bekommen wir komisches datum, z.B. (-8 april ...) oder (54 maerz ...)&lt;br /&gt;
   ;&lt;br /&gt;
   ; 2. Versuch&lt;br /&gt;
   ; kontrolliere ob april_day und march_day gültig sind...&lt;br /&gt;
        &lt;br /&gt;
   (if (&amp;gt; march_day 31) (list april_day &amp;#039;April j)&lt;br /&gt;
                        (list march_day &amp;#039;Maerz j))))&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; (b)&lt;br /&gt;
&lt;br /&gt;
;;&lt;br /&gt;
;; Jedem Monat ist die Anzahl der Tage im Monat und der&lt;br /&gt;
;; Folgemonat zugeordnet.&lt;br /&gt;
;;&lt;br /&gt;
(define maerz (cons 31 &amp;#039;april))&lt;br /&gt;
(define april (cons 30 &amp;#039;mai))&lt;br /&gt;
(define mai (cons 31 &amp;#039;juni))&lt;br /&gt;
(define juni (cons 30 &amp;#039;juli))&lt;br /&gt;
&lt;br /&gt;
(define tage-im-monat car)&lt;br /&gt;
(define folgemonat cdr)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;;&lt;br /&gt;
;; Fuegt zu einem Datum d eine Anzahl von&lt;br /&gt;
;; Tagen t hinzu und gibt ein gueltiges&lt;br /&gt;
;; Datum zurück&lt;br /&gt;
;;&lt;br /&gt;
(define (datum+tage d t)&lt;br /&gt;
  (define (korrigiere-datum d)&lt;br /&gt;
    (let ((tag   (car d))&lt;br /&gt;
          (monat (eval (cadr d)))&lt;br /&gt;
          (jahr  (caddr d)))&lt;br /&gt;
      (if (&amp;gt; tag (tage-im-monat monat))&lt;br /&gt;
          (korrigiere-datum (list (- tag (tage-im-monat monat))&lt;br /&gt;
                                  (folgemonat monat)&lt;br /&gt;
                                  jahr))&lt;br /&gt;
          d)))&lt;br /&gt;
  (korrigiere-datum (cons (+ (car d) t)&lt;br /&gt;
                          (cdr d))))&lt;br /&gt;
&lt;br /&gt;
(define (himmelfahrt j)&lt;br /&gt;
  (datum+tage (ostersonntag j) 39))&lt;br /&gt;
&lt;br /&gt;
; (c)&lt;br /&gt;
&lt;br /&gt;
(define (pfingsten j)&lt;br /&gt;
  (datum+tage (ostersonntag j) 49))&lt;br /&gt;
  &lt;br /&gt;
; Tes&lt;/div&gt;</summary>
		<author><name>81.177.14.26</name></author>
	</entry>
</feed>