<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Prologfrage]]></title><description><![CDATA[<p>Was ist da falsch:</p>
<pre><code>ersetze([a,b,c,d,X|rest],[a,b,c,d,Y|rest],Z) :- Y is Z.
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/156703/prologfrage</link><generator>RSS for Node</generator><lastBuildDate>Fri, 10 Jul 2026 18:22:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/156703.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 19 Aug 2006 11:39:20 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Prologfrage on Sat, 19 Aug 2006 11:39:20 GMT]]></title><description><![CDATA[<p>Was ist da falsch:</p>
<pre><code>ersetze([a,b,c,d,X|rest],[a,b,c,d,Y|rest],Z) :- Y is Z.
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1120224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1120224</guid><dc:creator><![CDATA[Prologfrage]]></dc:creator><pubDate>Sat, 19 Aug 2006 11:39:20 GMT</pubDate></item><item><title><![CDATA[Reply to Prologfrage on Sat, 19 Aug 2006 13:12:45 GMT]]></title><description><![CDATA[<p>Da ist nichts falsch. Funktioniert doch einwandfrei:</p>
<pre><code>?- ersetze([a,b,c,d,X|rest],[a,b,c,d,Y|rest],1).

X = _G169
Y = 1

Yes
</code></pre>
<p>Aber Gegenfrage, was um Himmelswillen soll <em>das</em> sein?</p>
<p>Willst du vielleicht sowas hier (aber ich kann anhand deines Codes auch nur raten):</p>
<pre><code>ersetze([], [], _).
ersetze([H|T], [Z|TT], Z) :- H = Z, ersetze(T, TT, Z).
ersetze([H|T], [H|TT], Z) :- ersetze(T, TT, Z).
</code></pre>
<p>wäre dann</p>
<pre><code>?- ersetze([a,b,c,d], [a,b,c,d], d).

Yes
</code></pre>
<pre><code>?- ersetze([a,b,c,d], Y, d).

Y = [a, b, c, d]

Yes
</code></pre>
<pre><code>?- ersetze([a,b,c,X], Y, d).

X = d
Y = [a, b, c, d]

Yes
</code></pre>
<pre><code>?- ersetze([a,b,c,X], Y, Z), Z = d.

X = d
Y = [a, b, c, d]
Z = d

Yes
</code></pre>
<p>Ernsthaft, was willst du?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1120266</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1120266</guid><dc:creator><![CDATA[minhen]]></dc:creator><pubDate>Sat, 19 Aug 2006 13:12:45 GMT</pubDate></item><item><title><![CDATA[Reply to Prologfrage on Sat, 19 Aug 2006 13:32:11 GMT]]></title><description><![CDATA[<p>bei mir (SWI) gehts nicht. ich will das 5te element einer liste durch Z ersetzen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1120285</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1120285</guid><dc:creator><![CDATA[bei mir (SWI) gehts nicht]]></dc:creator><pubDate>Sat, 19 Aug 2006 13:32:11 GMT</pubDate></item><item><title><![CDATA[Reply to Prologfrage on Sat, 19 Aug 2006 14:39:28 GMT]]></title><description><![CDATA[<p>Sag's doch gleich <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Das ist relativ simpel:<br />
ersetze5([A1, A2, A3, A4, _|T], [A1, A2, A3, A4, Z|T], Z).</p>
<pre><code>Welcome to SWI-Prolog (Multi-threaded, Version 5.2.13)
Copyright (c) 1990-2003 University of Amsterdam.

(...)

?- ersetze5([a,b,c,d,e,f,g,h], Y, 5).

Y = [a, b, c, d, 5, f, g, h]

Yes
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1120326</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1120326</guid><dc:creator><![CDATA[minhen]]></dc:creator><pubDate>Sat, 19 Aug 2006 14:39:28 GMT</pubDate></item><item><title><![CDATA[Reply to Prologfrage on Sat, 19 Aug 2006 14:43:16 GMT]]></title><description><![CDATA[<p>Ach ja, fällt dir dein Fehler auf? Achte auf den &quot;rest&quot; bei dir <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1120328</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1120328</guid><dc:creator><![CDATA[minhen]]></dc:creator><pubDate>Sat, 19 Aug 2006 14:43:16 GMT</pubDate></item><item><title><![CDATA[Reply to Prologfrage on Sat, 19 Aug 2006 14:45:08 GMT]]></title><description><![CDATA[<p>Muss rest groß geschrieben werdne?</p>
<p>Wofür ist eigentlich _?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1120331</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1120331</guid><dc:creator><![CDATA[Frage zu]]></dc:creator><pubDate>Sat, 19 Aug 2006 14:45:08 GMT</pubDate></item><item><title><![CDATA[Reply to Prologfrage on Sat, 19 Aug 2006 14:50:01 GMT]]></title><description><![CDATA[<p>Nur Großgeschriebens ist eine Variabel. Rest klein geschrieben ist ein fester Wert, ein Atom. Das '_' bedeutet lediglich &quot;hier ist eine Variabel, die mich aber nicht interessiert&quot;. Du kannst stattdessen auch etwas beliebiges groß geschriebenes nehmen. Dann wird Prolog dich allerdings warnen, dass du eine Variabel verlangt hast, die du aber nie verwendest <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Ach ja, das &quot;is&quot; ist natürlich auch noch ein Fehler. &quot;is&quot; wertet mathematische Ausdrücke aus. Deswegen wird es bei &quot;deinem&quot; SWI auch &quot;nicht funktioniert&quot; haben. Wetten du hast dein ursprüngliches Prädikat nicht mit &quot;1&quot; - wie ich in meinem Beispiel - sondern z.B. mit einem Buchstaben aufgerufen? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1120332</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1120332</guid><dc:creator><![CDATA[minhen]]></dc:creator><pubDate>Sat, 19 Aug 2006 14:50:01 GMT</pubDate></item><item><title><![CDATA[Reply to Prologfrage on Sat, 19 Aug 2006 14:52:31 GMT]]></title><description><![CDATA[<p>d.h. [a,<em>]=[</em>,<em>] ist nicht dasselbe wie [a,X]=[</em>,X]?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1120335</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1120335</guid><dc:creator><![CDATA[Frage zu]]></dc:creator><pubDate>Sat, 19 Aug 2006 14:52:31 GMT</pubDate></item><item><title><![CDATA[Reply to Prologfrage on Sat, 19 Aug 2006 15:00:31 GMT]]></title><description><![CDATA[<p>Probier sowas doch einfach aus:</p>
<pre><code>?- [a,_] = [_,_].

Yes

?- [a,X] = [_,X].

X = _G160

Yes
</code></pre>
<p>Was sieht man? Den Unterschied natürlich <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
'<em>' ist einfach irgendwas, aber nichts, mit dem man weiterarbeiten kann. 'X' dagegen ist eine benannte Variabel, deren Wert man über eben jenen Namen ansprechen kann.<br />
Kurz '</em>' ist für die Mülltonne, 'X' nicht.</p>
<p>Wenn du mit einer Variabel arbeiten willst, gibst du ihr einen Namen. Interessiert dich aber nicht der Wert einer Variabel, sondern willst du nur, dass ein Wert vorhanden ist, verwendest du '_'.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1120339</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1120339</guid><dc:creator><![CDATA[minhen]]></dc:creator><pubDate>Sat, 19 Aug 2006 15:00:31 GMT</pubDate></item></channel></rss>