<?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[Doppelt verkettete Liste]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich habe dank einer Beispieldatei eine doppelt verkettete Liste aufstellen können und kriege es hin, dass Eingaben gespeichert werden. Aber wie kann ich denn nun auf zwei Elemente zugreifen?<br />
Ich muss einen Taschenrechner programmieren, die einzelnen Werte sowie die Rechenzeichen werden in der verketteten Liste gespeichert.<br />
Wie könnte ich denn jetzt eine Rechnen-Funktion programmieren? Angenommen es handelt sich nur um eine Addition. In der Liste sei gespeichert: 2 +, 4 +, 5+<br />
Wie wähle ich das erste Element an und addiere es mit dem zweiten?</p>
<p>Ich wäre dankbar wenn mir jemand das Thema ein wenig erklären könnte.</p>
<p>Viele Grüße<br />
aperture</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/289841/doppelt-verkettete-liste</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Apr 2026 05:57:24 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/289841.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 13 Jul 2011 22:29:47 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Doppelt verkettete Liste on Wed, 13 Jul 2011 22:29:47 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich habe dank einer Beispieldatei eine doppelt verkettete Liste aufstellen können und kriege es hin, dass Eingaben gespeichert werden. Aber wie kann ich denn nun auf zwei Elemente zugreifen?<br />
Ich muss einen Taschenrechner programmieren, die einzelnen Werte sowie die Rechenzeichen werden in der verketteten Liste gespeichert.<br />
Wie könnte ich denn jetzt eine Rechnen-Funktion programmieren? Angenommen es handelt sich nur um eine Addition. In der Liste sei gespeichert: 2 +, 4 +, 5+<br />
Wie wähle ich das erste Element an und addiere es mit dem zweiten?</p>
<p>Ich wäre dankbar wenn mir jemand das Thema ein wenig erklären könnte.</p>
<p>Viele Grüße<br />
aperture</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2092499</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2092499</guid><dc:creator><![CDATA[Aperture]]></dc:creator><pubDate>Wed, 13 Jul 2011 22:29:47 GMT</pubDate></item><item><title><![CDATA[Reply to Doppelt verkettete Liste on Wed, 13 Jul 2011 22:46:29 GMT]]></title><description><![CDATA[<p>Bei deiner Liste solltest du auf jeden Fall einen Verweis von außen haben (z.B. einen Zeiger auf das erste Element). Dann kannst du von dort ausgehend an den Vorgänger- und Nachfolger-Zeigern entlanghangeln, um die benachbarten Elemente zu erreichen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2092503</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2092503</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Wed, 13 Jul 2011 22:46:29 GMT</pubDate></item><item><title><![CDATA[Reply to Doppelt verkettete Liste on Thu, 14 Jul 2011 06:14:27 GMT]]></title><description><![CDATA[<p>ihr spinnt doch beide, nachts wenn alle leute schlafen hier einen chat zu eröffnen wer den längeren hat... xD</p>
<p>... und dazu keine antwort an den threadersteller <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="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2092564</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2092564</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Thu, 14 Jul 2011 06:14:27 GMT</pubDate></item><item><title><![CDATA[Reply to Doppelt verkettete Liste on Fri, 15 Jul 2011 14:27:46 GMT]]></title><description><![CDATA[<p>Skym0sh0 schrieb:</p>
<blockquote>
<p>ihr spinnt doch beide, nachts wenn alle leute schlafen hier einen chat zu eröffnen wer den längeren hat... xD</p>
<p>... und dazu keine antwort an den threadersteller <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="😃"
    /></p>
</blockquote>
<p>Danke, hatte gerade denselben Gedanken beim Durchlesen der drei Seiten <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="😃"
    /></p>
<p>Vielleicht kann man sich besser was drunter vorstellen, wenn ich den Code uploade:<br />
<a href="http://www.files.to/get/16707/eg2pp31cyh" rel="nofollow">http://www.files.to/get/16707/eg2pp31cyh</a> (2 KB, 5 Dateien)</p>
<p>Bitte nicht an den Bezeichnungen verwirren, ich habe das von einem anderen Programm übernommen und nicht teilweise alle Bezeichnungen passend gemacht.<br />
Derzeit ist es möglich, Werte und Rechenzeichen in der Datenbank zu speichern. Aber ich weiß nicht, wie ich mit diesen nun rechnen kann. Ich würde jetzt in der Funktion &quot;daten_loeschen&quot; (wie gesagt, Name unpassend) eine Rechnung durchführen, also zu Beginn die ersten beiden Werte zu addieren/subtrahieren/multiplizieren oder dividieren.</p>
<p>Ich habe hier aber keinen Ansatz. Wäre es ein array, könnte ich &quot;array[0] + array [1]&quot; machen. Aber mit der verketteten Liste komme ich nicht klar.</p>
<p>Viele Grüße<br />
aperture</p>
<p>EDIT 15.7.: Datei wegen mangelndem Interesse entfernt (wurde nie heruntergeladen).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2092604</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2092604</guid><dc:creator><![CDATA[Aperture]]></dc:creator><pubDate>Fri, 15 Jul 2011 14:27:46 GMT</pubDate></item><item><title><![CDATA[Reply to Doppelt verkettete Liste on Thu, 14 Jul 2011 09:04:46 GMT]]></title><description><![CDATA[<p>sorry, kollege, aber rutnerladen tu ich nix. und das dürfte vielen anderen genauso gehen (ideone ist schon hart genug ;))</p>
<p>die einfachste funktion um 2 nachbarn zu addieren wäre ja so in etwa:</p>
<pre><code class="language-cpp">int add(int indexA, int indexB)
{
    // return array[indexA] + array[indexB];
    node * it1 = this-&gt;begin;
    while ( indexA &amp;&amp; it1 ) 
    {
         it1 = it1-&gt;next;
         indexA--;
    }
    int A = it1-&gt;value;

    node * it2 = this-&gt;begin;
    while ( indexB &amp;&amp; it2 ) 
    {
         it2 = it2-&gt;next;
         indexB--;
    }
    int B = it2-&gt;value;

    return A + B;
}
</code></pre>
<p>das wäre die simpelste einfachste und schlechteste lösung... (kann man verbessern, bei spezialfällen wie indexA &lt; indexB, dass man von it wenn indexA == 0 ist weiter zu indexB zählt, und vieles mehr)</p>
<p>wenn deine operationen nach dem schema gespeichert sind:<br />
zahl, op, zahl, op, zahl, op ....</p>
<p>kannst du folgendes machen(ist aber ohne rechenregeln):</p>
<pre><code class="language-cpp">int evaluate()
{
    int result = 0;
    node * it = this-&gt;begin;
    while ( it )
    {
         int tmp;
         switch ( it-&gt;next )  // der operator
         {
         case '+':
             tmp = it-&gt;value + it-&gt;next-&gt;next-&gt;value;
             break;
         case '-':
             tmp = it-&gt;value - it-&gt;next-&gt;next-&gt;value;
             break;
         case '*':
             tmp = it-&gt;value * it-&gt;next-&gt;next-&gt;value;
             break;
         case '/':
             tmp = it-&gt;value / it-&gt;next-&gt;next-&gt;value;
             break;
         }
         result += tmp;
         it = it-&gt;next-&gt;next; // zahl -&gt; op -&gt; zahl (auf die nächste zahl wird zugegriffen)
    }

    return result;
}
</code></pre>
<p>das wäre eine einfache möglichkeit...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2092612</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2092612</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Thu, 14 Jul 2011 09:04:46 GMT</pubDate></item><item><title><![CDATA[Reply to Doppelt verkettete Liste on Fri, 15 Jul 2011 14:21:16 GMT]]></title><description><![CDATA[<p>Vielen Dank für deine Antwort (und die anderen Antworten), das hat mir sehr weitergeholfen!</p>
<p>Viele Grüße<br />
aperture</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2093189</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2093189</guid><dc:creator><![CDATA[Aperture]]></dc:creator><pubDate>Fri, 15 Jul 2011 14:21:16 GMT</pubDate></item></channel></rss>