<?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-MusterLoesung07.txt</id>
	<title>P1-WS04-MusterLoesung07.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-MusterLoesung07.txt"/>
	<link rel="alternate" type="text/html" href="https://wiki.mafiasi.de/index.php?title=P1-WS04-MusterLoesung07.txt&amp;action=history"/>
	<updated>2026-10-18T23:44:41Z</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-MusterLoesung07.txt&amp;diff=3098&amp;oldid=prev</id>
		<title>PatrickFey: 2 Versionen</title>
		<link rel="alternate" type="text/html" href="https://wiki.mafiasi.de/index.php?title=P1-WS04-MusterLoesung07.txt&amp;diff=3098&amp;oldid=prev"/>
		<updated>2007-11-05T05:50:07Z</updated>

		<summary type="html">&lt;p&gt;2 Versionen&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&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;4&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;!-- diff cache key mediawiki-fsrwiki_:diff:1.41:old-3097:rev-3098 --&gt;
&lt;/table&gt;</summary>
		<author><name>PatrickFey</name></author>
	</entry>
	<entry>
		<id>https://wiki.mafiasi.de/index.php?title=P1-WS04-MusterLoesung07.txt&amp;diff=3097&amp;oldid=prev</id>
		<title>fsrwiki_&gt;Oddmuse Import: link fix</title>
		<link rel="alternate" type="text/html" href="https://wiki.mafiasi.de/index.php?title=P1-WS04-MusterLoesung07.txt&amp;diff=3097&amp;oldid=prev"/>
		<updated>2007-11-05T05:49:25Z</updated>

		<summary type="html">&lt;p&gt;link fix&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw-interface=&quot;&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 5. November 2007, 05:49 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l68&quot;&gt;Zeile 68:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 68:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% (d) tore_durchschnitt(+Mannschaft,&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% (d) tore_durchschnitt(+Mannschaft,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%                       ?Treffer_Durchschnitt, ?Gegentreffer_Durchschnitt)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%                       ?&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Treffer_Durchschnitt&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;, ?&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Gegentreffer_Durchschnitt&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     berechnet die durchschnittliche Zahl von Treffern und&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     berechnet die durchschnittliche Zahl von Treffern und&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     Gegentreffern pro Spiel einer Mannschaft (unter Benutzung des&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     Gegentreffern pro Spiel einer Mannschaft (unter Benutzung des&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l74&quot;&gt;Zeile 74:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 74:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     length/2 für Listen):&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     length/2 für Listen):&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;tore_durchschnitt(Mannschaft, Treffer_Durchschnitt, Gegentreffer_Durchschnitt) :-&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;tore_durchschnitt(Mannschaft, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Treffer_Durchschnitt&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Gegentreffer_Durchschnitt&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;) :-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     trefferlisten(Mannschaft, Trefferliste, Gegentrefferliste),&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     trefferlisten(Mannschaft, Trefferliste, Gegentrefferliste),&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     sum(Trefferliste, Treffer),&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     sum(Trefferliste, Treffer),&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     sum(Gegentrefferliste, Gegentreffer),&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     sum(Gegentrefferliste, Gegentreffer),&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     length(Trefferliste, AnzahlSpiele),&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     length(Trefferliste, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;AnzahlSpiele&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;),&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     Treffer_Durchschnitt is Treffer / AnzahlSpiele,&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Treffer_Durchschnitt&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;is Treffer / &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;AnzahlSpiele&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     Gegentreffer_Durchschnitt is Gegentreffer / AnzahlSpiele.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Gegentreffer_Durchschnitt&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;is Gegentreffer / &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;AnzahlSpiele&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% (e) punkte(+Mannschaft, ?Plus, ?Minus)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% (e) punkte(+Mannschaft, ?Plus, ?Minus)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l92&quot;&gt;Zeile 92:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 92:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;punkte(Mannschaft, 1, 1) :-&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;punkte(Mannschaft, 1, 1) :-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     tore(Mannschaft, Unentschieden_Treffer, Unentschieden_Treffer).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     tore(Mannschaft, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Unentschieden_Treffer&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Unentschieden_Treffer&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;punkte(Mannschaft, 0, 2) :-&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;punkte(Mannschaft, 0, 2) :-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l153&quot;&gt;Zeile 153:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 153:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% schlage_wort_nach(?Deutsch, ?Englisch, ?Woerterbuch)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% schlage_wort_nach(?Deutsch, ?Englisch, ?Woerterbuch)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% sucht Deutsch/Englisch Wortpaar in Woerterbuch (einer Liste von&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% sucht Deutsch&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;/Englisch&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;Wortpaar in Woerterbuch (einer Liste von&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% &amp;quot;Paaren&amp;quot;, wobei letzteres lt. Aufgabenblatt Listen mit zwei&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% &amp;quot;Paaren&amp;quot;, wobei letzteres lt. Aufgabenblatt Listen mit zwei&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% Elementen sind).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% Elementen sind).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l174&quot;&gt;Zeile 174:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 174:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;uebersetzung([], []).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;uebersetzung([], []).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;uebersetzung([DeutschesWort|RestDeutsch],&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;uebersetzung(&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;[DeutschesWort&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;|&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;RestDeutsch&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;],&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;              [EnglischesWort|RestEnglisch]) :-&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;              &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;[EnglischesWort&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;|&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;RestEnglisch&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;]) :-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     schlage_wort_nach(DeutschesWort, EnglischesWort),&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     schlage_wort_nach(&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;DeutschesWort&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;EnglischesWort&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;),&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     uebersetzung(RestDeutsch, RestEnglisch).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     uebersetzung(&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;RestDeutsch&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;RestEnglisch&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% Tests zeigen was passiert, wenn mehrer Wörter gleich übersetzt sind;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% Tests zeigen was passiert, wenn mehrer Wörter gleich übersetzt sind;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l218&quot;&gt;Zeile 218:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 218:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;suffix(S, [_|X]) :- suffix(S, X).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;suffix(S, [_|X]) :- suffix(S, X).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     Anfragen, bei denen nur der Präfix/Suffix instanziiert sind,&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     Anfragen, bei denen nur der Präfix&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;/Suffix&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;instanziiert sind,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     terminieren, aber geben nur eine Lösung, bei der die gesamte&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     terminieren, aber geben nur eine Lösung, bei der die gesamte&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     Restliste durch eine Variable dargestellt wird:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     Restliste durch eine Variable dargestellt wird:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l245&quot;&gt;Zeile 245:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 245:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     Hierfür muß wiederum lediglich der Rekursionsabschluß so&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     Hierfür muß wiederum lediglich der Rekursionsabschluß so&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     geändert werden, daß die Liste selbst mindestens ein Element&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     geändert werden, daß die Liste selbst mindestens ein Element&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     mehr als der Präfix/Suffix hat (hier als Varianten der Prädikate&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     mehr als der Präfix&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;/Suffix&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]] &lt;/ins&gt;hat (hier als Varianten der Prädikate&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     aus (b), analog auch für die Originale aus (a) machbar):&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;%     aus (b), analog auch für die Originale aus (a) machbar):&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l285&quot;&gt;Zeile 285:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 285:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% jetzt brauchen wir ein Hilfsprädikat, um rekursiv die Liste&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% jetzt brauchen wir ein Hilfsprädikat, um rekursiv die Liste&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% durchzugehen und die Worthäufigkeiten zu bestimmen:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% durchzugehen und die Worthäufigkeiten zu bestimmen:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     zaehle_woerter(Woerter, Haeufigkeiten_Roh),&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     zaehle_woerter(Woerter, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Haeufigkeiten_Roh&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;),&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% anschließend ist das Ergebnis noch nach den Wörtern sortiert,&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% anschließend ist das Ergebnis noch nach den Wörtern sortiert,&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% nicht wie gewünscht zuerst nach den Häufigkeiten, aber das ist&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% nicht wie gewünscht zuerst nach den Häufigkeiten, aber das ist&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% schnell erledigt:&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% schnell erledigt:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     sort(Haeufigkeiten_Roh, Haeufigkeiten).&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     sort(&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;Haeufigkeiten_Roh&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;, Haeufigkeiten).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% zaehle_woerter/2 bekommt die sortierte Liste der Wörter und soll&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% zaehle_woerter/2 bekommt die sortierte Liste der Wörter und soll&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l315&quot;&gt;Zeile 315:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 315:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% Rekursionsabschluß / Zählen beenden, wenn man auf ein anderes Wort&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% Rekursionsabschluß / Zählen beenden, wenn man auf ein anderes Wort&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% trifft (und _nur_ dann):&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% trifft (und _nur_ dann):&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;zaehle_wort([Wort,NaechstesWort|Woerter], Wort, 1, [NaechstesWort|Woerter]) :-&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;zaehle_wort([Wort,&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;NaechstesWort&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;|Woerter], Wort, 1, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;[NaechstesWort&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;|Woerter]) :-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     Wort \= NaechstesWort.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     Wort \= &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;NaechstesWort&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% Rekursion falls Wort noch mehrfach in der Liste - ein Vorkommnis&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% Rekursion falls Wort noch mehrfach in der Liste - ein Vorkommnis&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% wegnehmen und nach diesem Wort weitersuchen/zählen, rekursiv Anzahl&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% wegnehmen und nach diesem Wort weitersuchen/zählen, rekursiv Anzahl&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% um einen erhöhen.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;% um einen erhöhen.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;zaehle_wort([Wort,Wort|Woerter], Wort, Anzahl, RestWoerter) :-&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;zaehle_wort([Wort,Wort|Woerter], Wort, Anzahl, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;RestWoerter&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;) :-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     zaehle_wort([Wort|Woerter], Wort, Nochanzahl, RestWoerter),&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     zaehle_wort([Wort|Woerter], Wort, Nochanzahl, &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[&lt;/ins&gt;RestWoerter&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;]]&lt;/ins&gt;),&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     Anzahl is Nochanzahl + 1.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;     Anzahl is Nochanzahl + 1.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>fsrwiki_&gt;Oddmuse Import</name></author>
	</entry>
	<entry>
		<id>https://wiki.mafiasi.de/index.php?title=P1-WS04-MusterLoesung07.txt&amp;diff=3096&amp;oldid=prev</id>
		<title>fsrwiki_&gt;1illig: spam</title>
		<link rel="alternate" type="text/html" href="https://wiki.mafiasi.de/index.php?title=P1-WS04-MusterLoesung07.txt&amp;diff=3096&amp;oldid=prev"/>
		<updated>2006-12-22T05:38:11Z</updated>

		<summary type="html">&lt;p&gt;spam&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;
% -*-prolog-*-&lt;br /&gt;
%&lt;br /&gt;
%                       P1 Übungen WS2004/2005&lt;br /&gt;
%                  Musterlösung Blatt 7 (Hans Meine)&lt;br /&gt;
%&lt;br /&gt;
%---------------------------------------------------------------------&lt;br /&gt;
%                         1. Datenaggregation&lt;br /&gt;
%---------------------------------------------------------------------&lt;br /&gt;
%&lt;br /&gt;
% Beispieldaten von Aufgabenblatt:&lt;br /&gt;
&lt;br /&gt;
spiel(4,kiel,magdeburg,30,28).&lt;br /&gt;
spiel(4,lemgo,essen,27,23).&lt;br /&gt;
spiel(4,minden,nordhorn,32,28).&lt;br /&gt;
spiel(5,solingen,schwerin,29,32).&lt;br /&gt;
spiel(5,nordhorn,lemgo,20,21).&lt;br /&gt;
spiel(5,eisenach,wetzlar,28,34).&lt;br /&gt;
&lt;br /&gt;
% (a) sum(+Liste,?Summe)&lt;br /&gt;
%     berechnet die arithmetische Summe der Elemente einer Liste&lt;br /&gt;
&lt;br /&gt;
sum([], 0).&lt;br /&gt;
sum([Kopf|Rest], Summe) :-&lt;br /&gt;
    sum(Rest, Restsumme),&lt;br /&gt;
    Summe is Kopf + Restsumme.&lt;br /&gt;
&lt;br /&gt;
% (b) tore(?Mannschaft,?Treffer,?Gegentreffer)&lt;br /&gt;
%     bestimmt eigene und gegenerische Tore berechnet, unabhängig&lt;br /&gt;
%     davon, ob das Spiel zu Hause oder auswärts stattfand.&lt;br /&gt;
&lt;br /&gt;
tore(Mannschaft, Treffer, Gegentreffer) :- % Heimspiel&lt;br /&gt;
    spiel(_, Mannschaft, _, Treffer, Gegentreffer).&lt;br /&gt;
&lt;br /&gt;
tore(Mannschaft, Treffer, Gegentreffer) :- % Auswärtsspiel&lt;br /&gt;
    spiel(_, _, Mannschaft, Gegentreffer, Treffer).&lt;br /&gt;
&lt;br /&gt;
% (c) tor_verhaeltnis(+Mannschaft, ?Treffer, ?Gegentreffer)&lt;br /&gt;
%     berechnet Summe aller Tore bzw. Gegentore in allen Spielen der&lt;br /&gt;
%     Mannschaft, indem alle Ergebnisse in Listen gesammelt und mit&lt;br /&gt;
%     dem sum/2 aus (a) aufaddiert werden:&lt;br /&gt;
&lt;br /&gt;
tor_verhaeltnis_1(Mannschaft, Treffer, Gegentreffer) :-&lt;br /&gt;
    findall(Tore, tore(Mannschaft, Tore, _), Trefferliste),&lt;br /&gt;
    sum(Trefferliste, Treffer),&lt;br /&gt;
    findall(Gegentore, tore(Mannschaft, _, Gegentore), Gegentrefferliste),&lt;br /&gt;
    sum(Gegentrefferliste, Gegentreffer).&lt;br /&gt;
&lt;br /&gt;
%     (Wie das + im dokumentierten Prädikatskopf schon andeutet, muß&lt;br /&gt;
%     Mannschaft instanziiert werden, damit findall nur die Spiele&lt;br /&gt;
%     einer Mannschaft findet.)&lt;br /&gt;
%&lt;br /&gt;
%     Da (d) so ähnlich gelöst werden kann, bilden wir noch ein&lt;br /&gt;
%     Hilfsprädikat:&lt;br /&gt;
%     trefferlisten(+Mannschaft, ?Trefferliste, ?Gegentrefferliste)&lt;br /&gt;
%     bildet die Listen aller Treffer beziehungsweise aller Gegentreffer:&lt;br /&gt;
&lt;br /&gt;
trefferlisten(Mannschaft, Trefferliste, Gegentrefferliste) :-&lt;br /&gt;
    findall(Tore, tore(Mannschaft, Tore, _), Trefferliste),&lt;br /&gt;
    findall(Gegentore, tore(Mannschaft, _, Gegentore), Gegentrefferliste).&lt;br /&gt;
&lt;br /&gt;
%     ..damit kann tor_verhaeltnis/3 etwas kürzer formuliert werden:&lt;br /&gt;
&lt;br /&gt;
tor_verhaeltnis(Mannschaft, Treffer, Gegentreffer) :-&lt;br /&gt;
    trefferlisten(Mannschaft, Trefferliste, Gegentrefferliste),&lt;br /&gt;
    sum(Trefferliste, Treffer),&lt;br /&gt;
    sum(Gegentrefferliste, Gegentreffer).&lt;br /&gt;
&lt;br /&gt;
% (d) tore_durchschnitt(+Mannschaft,&lt;br /&gt;
%                       ?Treffer_Durchschnitt, ?Gegentreffer_Durchschnitt)&lt;br /&gt;
%     berechnet die durchschnittliche Zahl von Treffern und&lt;br /&gt;
%     Gegentreffern pro Spiel einer Mannschaft (unter Benutzung des&lt;br /&gt;
%     eben definierten trefferlisten/3-Prädikats und des eingebauten&lt;br /&gt;
%     length/2 für Listen):&lt;br /&gt;
&lt;br /&gt;
tore_durchschnitt(Mannschaft, Treffer_Durchschnitt, Gegentreffer_Durchschnitt) :-&lt;br /&gt;
    trefferlisten(Mannschaft, Trefferliste, Gegentrefferliste),&lt;br /&gt;
    sum(Trefferliste, Treffer),&lt;br /&gt;
    sum(Gegentrefferliste, Gegentreffer),&lt;br /&gt;
    length(Trefferliste, AnzahlSpiele),&lt;br /&gt;
    Treffer_Durchschnitt is Treffer / AnzahlSpiele,&lt;br /&gt;
    Gegentreffer_Durchschnitt is Gegentreffer / AnzahlSpiele.&lt;br /&gt;
&lt;br /&gt;
% (e) punkte(+Mannschaft, ?Plus, ?Minus)&lt;br /&gt;
%     berechnet die in einem Spiel von einer Mannschaft erzielten&lt;br /&gt;
%     Tabellenpunkte, unabhängig davon, ob das Spiel zu Hause oder&lt;br /&gt;
%     auswä rts stattfand:&lt;br /&gt;
&lt;br /&gt;
punkte(Mannschaft, 2, 0) :-&lt;br /&gt;
    tore(Mannschaft, Treffer, Gegentreffer),&lt;br /&gt;
    Treffer &amp;gt; Gegentreffer.&lt;br /&gt;
&lt;br /&gt;
punkte(Mannschaft, 1, 1) :-&lt;br /&gt;
    tore(Mannschaft, Unentschieden_Treffer, Unentschieden_Treffer).&lt;br /&gt;
&lt;br /&gt;
punkte(Mannschaft, 0, 2) :-&lt;br /&gt;
    tore(Mannschaft, Treffer, Gegentreffer),&lt;br /&gt;
    Treffer &amp;lt; Gegentreffer.&lt;br /&gt;
&lt;br /&gt;
% (f) punkte_verhaeltnis(+Mannschaft, ?Plus, ?Minus)&lt;br /&gt;
%     errechnet das das Punkteverhältnis aus allen Spielen einer&lt;br /&gt;
%     Mannschaft.&lt;br /&gt;
&lt;br /&gt;
punkte_verhaeltnis(Mannschaft, Plus, Minus) :-&lt;br /&gt;
    findall(Plus, punkte(Mannschaft, Plus, _), Pluspunkte),&lt;br /&gt;
    sum(Pluspunkte, Plus),&lt;br /&gt;
    findall(Minus, punkte(Mannschaft, _, Minus), Minuspunkte),&lt;br /&gt;
    sum(Minuspunkte, Minus).&lt;br /&gt;
&lt;br /&gt;
% (g) Man müßte tore/3 und punkte/3 um jeweils eine Argumentstelle für&lt;br /&gt;
%     den Spieltag und/oder Spieltyp (heimspiel/auswaerts) erweitern,&lt;br /&gt;
%     ebenso für alle darauf aufbauenden Prädikate, die zur Auswertung&lt;br /&gt;
%     benötigt werden, und anschließend die findall-Aufrufe in diesen&lt;br /&gt;
%     Prädikaten dementsprechend um die Bedingungen erweitern, z.B.&lt;br /&gt;
&lt;br /&gt;
punkte_verhaeltnis_spieltyp(Mannschaft, Plus, Minus, Spieltyp) :-&lt;br /&gt;
    findall(Plus, punkte(Mannschaft, Plus, _, Spieltyp), Pluspunkte),&lt;br /&gt;
    sum(Pluspunkte, Plus),&lt;br /&gt;
    findall(Minus, punkte(Mannschaft, _, Minus, Spieltyp), Minuspunkte),&lt;br /&gt;
    sum(Minuspunkte, Minus).&lt;br /&gt;
&lt;br /&gt;
%     wobei punkte/4 aus sechs Regeln der folgenden Form besteht:&lt;br /&gt;
&lt;br /&gt;
punkte(Mannschaft, 2, 0, heimspiel) :-&lt;br /&gt;
    spiel(_, Mannschaft, _, Treffer, Gegentreffer),&lt;br /&gt;
    Treffer &amp;gt; Gegentreffer.&lt;br /&gt;
&lt;br /&gt;
punkte(Mannschaft, 2, 0, auswaerts) :-&lt;br /&gt;
    spiel(_, _, Mannschaft, Gegentreffer, Treffer),&lt;br /&gt;
    Treffer &amp;gt; Gegentreffer.&lt;br /&gt;
&lt;br /&gt;
%     Die Eingrenzung auf einen Saisonteil kann besonders elegant&lt;br /&gt;
%     erfolgen, wenn man ein Hilfsprädikat definiert wie:&lt;br /&gt;
&lt;br /&gt;
zeitraum(Tag, erste_saisonhaelfte) :- Tag &amp;lt; 18.&lt;br /&gt;
zeitraum(Tag, zweite_saisonhaelfte) :- Tag &amp;gt;= 18.&lt;br /&gt;
zeitraum(_, ganze_saison).&lt;br /&gt;
&lt;br /&gt;
%     damit können dann Anfragen nach beliebigen Zeiträumen ermöglicht&lt;br /&gt;
% 	  werden, wie folgt skizziert:&lt;br /&gt;
&lt;br /&gt;
punkte_verhaeltnis_zeitraum(Mannschaft, Plus, Minus, Zeitraum) :-&lt;br /&gt;
    findall(Plus, (punkte_tag(Mannschaft, Plus, _, Plustag),&lt;br /&gt;
                   zeitraum(Plustag, Zeitraum)), Pluspunkte),&lt;br /&gt;
    sum(Pluspunkte, Plus),&lt;br /&gt;
    findall(Minus, (punkte_tag(Mannschaft, Minus, _, Minustag),&lt;br /&gt;
                    zeitraum(Minustag, Zeitraum)), Minuspunkte),&lt;br /&gt;
    sum(Minuspunkte, Minus).&lt;br /&gt;
&lt;br /&gt;
%---------------------------------------------------------------------&lt;br /&gt;
%                            2. Umkodieren&lt;br /&gt;
%---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
% schlage_wort_nach(?Deutsch, ?Englisch, ?Woerterbuch)&lt;br /&gt;
% sucht Deutsch/Englisch Wortpaar in Woerterbuch (einer Liste von&lt;br /&gt;
% &amp;quot;Paaren&amp;quot;, wobei letzteres lt. Aufgabenblatt Listen mit zwei&lt;br /&gt;
% Elementen sind).&lt;br /&gt;
&lt;br /&gt;
schlage_wort_nach(Deutsch, Englisch, [[Deutsch, Englisch]|_]).&lt;br /&gt;
schlage_wort_nach(Deutsch, Englisch, [_|Woerterbuch]) :-&lt;br /&gt;
    schlage_wort_nach(Deutsch, Englisch, Woerterbuch).&lt;br /&gt;
&lt;br /&gt;
% schlage_wort_nach(?Deutsch, ?Englisch)&lt;br /&gt;
% benutzt ein vorgegebenes Woerterbuch, um ein Wort nachzuschlagen&lt;br /&gt;
&lt;br /&gt;
schlage_wort_nach(Deutsch, Englisch) :-&lt;br /&gt;
    schlage_wort_nach(Deutsch, Englisch,&lt;br /&gt;
                      [[hund,dog], [mann,man], [frau,woman], [katze,cat],&lt;br /&gt;
                       [die,the], [der,the], [schlaeft,sleeps]]).&lt;br /&gt;
&lt;br /&gt;
% uebersetzung(?Deutsch, ?Englisch)&lt;br /&gt;
% kann in beiden Richtungen auf primitive Weise übersetzen, ruft&lt;br /&gt;
% einfach auf rekursive Weise auf jedem Wort schlage_wort_nach/2 auf.&lt;br /&gt;
&lt;br /&gt;
uebersetzung([], []).&lt;br /&gt;
uebersetzung([DeutschesWort|RestDeutsch],&lt;br /&gt;
             [EnglischesWort|RestEnglisch]) :-&lt;br /&gt;
    schlage_wort_nach(DeutschesWort, EnglischesWort),&lt;br /&gt;
    uebersetzung(RestDeutsch, RestEnglisch).&lt;br /&gt;
&lt;br /&gt;
% Tests zeigen was passiert, wenn mehrer Wörter gleich übersetzt sind;&lt;br /&gt;
% es werden einfach alle Alternativen ausgegeben:&lt;br /&gt;
&lt;br /&gt;
% ?- uebersetzung(Deutsch, [the, dog, sleeps]).&lt;br /&gt;
% Deutsch = [die, hund, schlaeft] ;&lt;br /&gt;
% Deutsch = [der, hund, schlaeft] ;&lt;br /&gt;
% No&lt;br /&gt;
&lt;br /&gt;
% Wenn man unbekannte Wörter behandeln will, kann man natuerlich&lt;br /&gt;
% einfach einen Fakt hinzufügen, der das Wort unübersetzt läßt:&lt;br /&gt;
&lt;br /&gt;
schlage_wort_nach(Wort, Wort, []).&lt;br /&gt;
&lt;br /&gt;
% Jetzt funktioniert zwar die folgende Anfrage:&lt;br /&gt;
&lt;br /&gt;
% ?- uebersetzung([der, hund, schlaeft, gut], X).&lt;br /&gt;
% X = [the, dog, sleeps, gut]&lt;br /&gt;
&lt;br /&gt;
% aber alternative Anfragen führen zu Unglück:&lt;br /&gt;
% X = [the, dog, sleeps, gut] ;&lt;br /&gt;
% X = [the, dog, schlaeft, gut] ;&lt;br /&gt;
% X = [the, hund, sleeps, gut] ;&lt;br /&gt;
% X = [the, hund, schlaeft, gut] ;&lt;br /&gt;
% ...&lt;br /&gt;
&lt;br /&gt;
%---------------------------------------------------------------------&lt;br /&gt;
%                        3. Listenmanipulation&lt;br /&gt;
%---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
% (a) Schreiben Sie zwei Prädikate prefix/2 und suffix/2, die&lt;br /&gt;
%     überprüfen, ob eine Liste Anfangs- bzw. Endstück einer zweiten&lt;br /&gt;
%     Liste ist.&lt;br /&gt;
&lt;br /&gt;
prefix([], _).&lt;br /&gt;
prefix([E|R], [E|X]) :- prefix(R, X).&lt;br /&gt;
&lt;br /&gt;
suffix(X, X).&lt;br /&gt;
suffix(S, [_|X]) :- suffix(S, X).&lt;br /&gt;
&lt;br /&gt;
%     Anfragen, bei denen nur der Präfix/Suffix instanziiert sind,&lt;br /&gt;
%     terminieren, aber geben nur eine Lösung, bei der die gesamte&lt;br /&gt;
%     Restliste durch eine Variable dargestellt wird:&lt;br /&gt;
&lt;br /&gt;
% ?- prefix([a,b,c],X).&lt;br /&gt;
% X = [a, b, c|_G232] ;&lt;br /&gt;
% No&lt;br /&gt;
&lt;br /&gt;
% (b) Implementieren Sie eine Variante von prefix/2 bzw. suffix/2, bei&lt;br /&gt;
%     denen die leere Liste nicht zur Lösungsmenge gehört.&lt;br /&gt;
&lt;br /&gt;
%     Hierfür muß lediglich der Rekursionsabschluß dementsprechend&lt;br /&gt;
%     geändert werden:&lt;br /&gt;
&lt;br /&gt;
prefix_nonempty([E], [E|_]).&lt;br /&gt;
prefix_nonempty([E|R], [E|X]) :- prefix_nonempty(R, X).&lt;br /&gt;
&lt;br /&gt;
suffix_nonempty([E|R], [E|R]).&lt;br /&gt;
suffix_nonempty(S, [_|X]) :- suffix_nonempty(S, X).&lt;br /&gt;
&lt;br /&gt;
% (c) Implementieren Sie eine weitere Variante der beiden Prädikate,&lt;br /&gt;
%     die ausschließlich echte Präfixe bzw. Suffixe ermittelt. Echt&lt;br /&gt;
%     sei ein Präfix bzw. Suffix einer Liste, wenn es ungleich der&lt;br /&gt;
%     Liste selbst ist (vgl. Teilmenge &amp;lt;-&amp;gt; echte Teilmenge).&lt;br /&gt;
&lt;br /&gt;
%     Hierfür muß wiederum lediglich der Rekursionsabschluß so&lt;br /&gt;
%     geändert werden, daß die Liste selbst mindestens ein Element&lt;br /&gt;
%     mehr als der Präfix/Suffix hat (hier als Varianten der Prädikate&lt;br /&gt;
%     aus (b), analog auch für die Originale aus (a) machbar):&lt;br /&gt;
&lt;br /&gt;
real_prefix([E], [E,_|_]).&lt;br /&gt;
real_prefix([E|R], [E|X]) :- real_prefix(R, X).&lt;br /&gt;
&lt;br /&gt;
real_suffix([E|R], [_,E|R]).&lt;br /&gt;
real_suffix(S, [_|X]) :- real_suffix(S, X).&lt;br /&gt;
&lt;br /&gt;
% (d) Vergleichen Sie Unterschiede und Gemeinsamkeiten zwischen den&lt;br /&gt;
%     Prädikaten prefix/2, suffix/2 und append/3. Wie lassen sich die&lt;br /&gt;
%     Gemeinsamkeiten bei der Definition der Prädikate ausnutzen?&lt;br /&gt;
&lt;br /&gt;
%     Die Beziehungen können am einfachsten durch die folgenden&lt;br /&gt;
%     Prädikatsdefinitionen ausgedrückt werden:&lt;br /&gt;
&lt;br /&gt;
prefix_by_append(Prefix, List) :-&lt;br /&gt;
    append(Prefix, _, List).&lt;br /&gt;
&lt;br /&gt;
suffix_by_append(Suffix, List) :-&lt;br /&gt;
    append(_, Suffix, List).&lt;br /&gt;
&lt;br /&gt;
%     Diese Prädikatsdefinitionen verhalten sich in jeder Hinsicht wie&lt;br /&gt;
%     die einfachsten Prädikate aus (a).&lt;br /&gt;
&lt;br /&gt;
%---------------------------------------------------------------------&lt;br /&gt;
%                       4. Häufigkeitswörterbuch&lt;br /&gt;
%---------------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
haeufigkeiten(Text, Haeufigkeiten) :-&lt;br /&gt;
% zuerst benutzen wir flatten, weil uns die verschachtelte&lt;br /&gt;
% Struktur der Text-Liste nicht interessiert, im Gegenteil bei der&lt;br /&gt;
% Rekursion sogar stört:&lt;br /&gt;
    flatten(Text, Wortliste),&lt;br /&gt;
% anschließend sortieren wir alle Woerter, damit unsere&lt;br /&gt;
% Zählaufgabe sich darauf beschränkt, Sequenzen von direkt&lt;br /&gt;
% aufeinanderfolgenden Wörtern zu zählen:&lt;br /&gt;
    msort(Wortliste, Woerter),&lt;br /&gt;
% jetzt brauchen wir ein Hilfsprädikat, um rekursiv die Liste&lt;br /&gt;
% durchzugehen und die Worthäufigkeiten zu bestimmen:&lt;br /&gt;
    zaehle_woerter(Woerter, Haeufigkeiten_Roh),&lt;br /&gt;
% anschließend ist das Ergebnis noch nach den Wörtern sortiert,&lt;br /&gt;
% nicht wie gewünscht zuerst nach den Häufigkeiten, aber das ist&lt;br /&gt;
% schnell erledigt:&lt;br /&gt;
    sort(Haeufigkeiten_Roh, Haeufigkeiten).&lt;br /&gt;
&lt;br /&gt;
% zaehle_woerter/2 bekommt die sortierte Liste der Wörter und soll&lt;br /&gt;
% Sequenzen von gleichen Wörtern zählen. Hierfür verwenden wir ein&lt;br /&gt;
% weiteres Hilfsprädikat, das alle aufeinanderfolgenden Vorkommnisse&lt;br /&gt;
% des gleichen Wortes zusammenfaßt und rufen dieses rekursiv für jedes&lt;br /&gt;
% neue Wort auf. Mit den Ergebnissen des Hilfsprädikats bauen wir die&lt;br /&gt;
% Liste mit den Häufigkeiten auf:&lt;br /&gt;
&lt;br /&gt;
zaehle_woerter([], []).&lt;br /&gt;
zaehle_woerter(Woerter, [[Anzahl, Wort]|Haeufigkeiten]) :-&lt;br /&gt;
    zaehle_wort(Woerter, Wort, Anzahl, Restwoerter),&lt;br /&gt;
    zaehle_woerter(Restwoerter, Haeufigkeiten).&lt;br /&gt;
&lt;br /&gt;
% zaehle_wort(Wortliste, Wort, Anzahl, Restliste)&lt;br /&gt;
% nimmt das erste Wort aus der Wortliste und zählt die folgenden&lt;br /&gt;
% Vorkommnisse des gleichen Wortes. Restliste wird mit dem Suffix der&lt;br /&gt;
% Wortliste unifiziert, der bleibt wenn alle Vorkommnisse von &amp;lt;Wort&amp;gt;&lt;br /&gt;
% entfernt wurden.&lt;br /&gt;
&lt;br /&gt;
% Rekursionsabschluß (nötig, weil die folgenden Regeln nur auf Listen&lt;br /&gt;
% mit mindestens zwei Elementen angewendet werden können)&lt;br /&gt;
zaehle_wort([Wort], Wort, 1, []).&lt;br /&gt;
&lt;br /&gt;
% Rekursionsabschluß / Zählen beenden, wenn man auf ein anderes Wort&lt;br /&gt;
% trifft (und _nur_ dann):&lt;br /&gt;
zaehle_wort([Wort,NaechstesWort|Woerter], Wort, 1, [NaechstesWort|Woerter]) :-&lt;br /&gt;
    Wort \= NaechstesWort.&lt;br /&gt;
&lt;br /&gt;
% Rekursion falls Wort noch mehrfach in der Liste - ein Vorkommnis&lt;br /&gt;
% wegnehmen und nach diesem Wort weitersuchen/zählen, rekursiv Anzahl&lt;br /&gt;
% um einen erhöhen.&lt;br /&gt;
zaehle_wort([Wort,Wort|Woerter], Wort, Anzahl, RestWoerter) :-&lt;br /&gt;
    zaehle_wort([Wort|Woerter], Wort, Nochanzahl, RestWoerter),&lt;br /&gt;
    Anzahl is Nochanzahl + 1.&lt;br /&gt;
&lt;br /&gt;
% Test der Prädikate anhand des &amp;quot;Textes&amp;quot; vom Aufgabenblatt mit Hilfe&lt;br /&gt;
% der angegebenen Definition&lt;br /&gt;
&lt;br /&gt;
portray(X) :- write_term(X,[max_depth(30)]).&lt;br /&gt;
&lt;br /&gt;
% und formatiert:&lt;br /&gt;
&lt;br /&gt;
% ?- haeufigkeiten(&lt;br /&gt;
% |        [[wenn, hinter, fliegen, fliegen, fliegen, fliegen, fliegen, nach],&lt;br /&gt;
% |         [blaukraut, bleibt, blaukraut, und, brautkleid, bleibt, brautkleid],&lt;br /&gt;
% |         [wenn, du, denkst, du, denkst, denkst, du, nur, du, denkst]],&lt;br /&gt;
% |        Haeufigkeiten).&lt;br /&gt;
% &lt;br /&gt;
% Haeufigkeiten = [[1, hinter],&lt;br /&gt;
%                  [1, nach],&lt;br /&gt;
%                  [1, nur],&lt;br /&gt;
%                  [1, und],&lt;br /&gt;
%                  [2, blaukraut],&lt;br /&gt;
%                  [2, bleibt],&lt;br /&gt;
%                  [2, brautkleid],&lt;br /&gt;
%                  [2, wenn],&lt;br /&gt;
%                  [4, denkst],&lt;br /&gt;
%                  [4, du],&lt;br /&gt;
%                  [5, fliegen]] ;&lt;br /&gt;
%&lt;br /&gt;
% No&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>fsrwiki_&gt;1illig</name></author>
	</entry>
</feed>