<?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[[gelöst] Benutzung von Strukturen in Schleifen]]></title><description><![CDATA[<p>Moin</p>
<p>Ich bin zur Zeit dabei ein kleines Strategiespiel zu schreiben und hänge jetzt an einer Stelle fest die für das Weiterprogrammieren von großer Wichtigkeit ist.</p>
<p>Ich frage an diversen Stellen innerhalb des kompletten Codes die Einheitenkürzel der verschiedenen im Spiel möglichen Einheiten ab.</p>
<p>Das struct &quot;einheitenwerte&quot; ist in einer klasse definiert.</p>
<p>Das Problem, welches sich mir ergibt is,t dass ich versuchen möchte irgendeine Möglichkeit zu finden mit der ich Einheiten hinzufügen kann ohne das ich alle möglichen Schleifen absuchen muss nur um die Kürzel(und natürlich noch viele andere Statuswerte) der Schleife hinzuzufügen.</p>
<p>Ich hoffe das ihr eine idee habt wie ich aus dem Codeteil</p>
<pre><code class="language-cpp">while(!(spielfeld[altzeile-1][altspalte-1]==einheit1.kuerzel 
             || spielfeld[altzeile-1][altspalte-1]==einheit2.kuerzel
             || spielfeld[altzeile-1][altspalte-1]==einheit3.kuerzel 
             || spielfeld[altzeile-1][altspalte-1]==einheit4.kuerzel
             || spielfeld[altzeile-1][altspalte-1]==einheit5.kuerzel
             )
</code></pre>
<p>Soetwas wird</p>
<pre><code class="language-cpp">while(&quot;zugriff auf irgendein algorithmus der für alle erstellten einheiten die Kürzel durchsucht)
</code></pre>
<p>Ich hoffe ich konnte halbwegs verständlich erklären was gemeint ist.</p>
<p>mfg Lucky Luke</p>
<p>PS Falls ihr den Titel nicht treffend findet nennt mir bitte einen der verständlicher ist als der jetztige damit ich ihn abändern kann.</p>
<pre><code class="language-cpp">struct einheitenwerte{
                 char kuerzel;};
       einheitenwerte einheit1;
       einheitenwerte einheit2;
       einheitenwerte einheit3;
       einheitenwerte einheit4;
       einheitenwerte einheit5;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/264958/gelöst-benutzung-von-strukturen-in-schleifen</link><generator>RSS for Node</generator><lastBuildDate>Fri, 04 Sep 2026 10:24:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/264958.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 15 Apr 2010 15:08:56 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 17:13:29 GMT]]></title><description><![CDATA[<p>Moin</p>
<p>Ich bin zur Zeit dabei ein kleines Strategiespiel zu schreiben und hänge jetzt an einer Stelle fest die für das Weiterprogrammieren von großer Wichtigkeit ist.</p>
<p>Ich frage an diversen Stellen innerhalb des kompletten Codes die Einheitenkürzel der verschiedenen im Spiel möglichen Einheiten ab.</p>
<p>Das struct &quot;einheitenwerte&quot; ist in einer klasse definiert.</p>
<p>Das Problem, welches sich mir ergibt is,t dass ich versuchen möchte irgendeine Möglichkeit zu finden mit der ich Einheiten hinzufügen kann ohne das ich alle möglichen Schleifen absuchen muss nur um die Kürzel(und natürlich noch viele andere Statuswerte) der Schleife hinzuzufügen.</p>
<p>Ich hoffe das ihr eine idee habt wie ich aus dem Codeteil</p>
<pre><code class="language-cpp">while(!(spielfeld[altzeile-1][altspalte-1]==einheit1.kuerzel 
             || spielfeld[altzeile-1][altspalte-1]==einheit2.kuerzel
             || spielfeld[altzeile-1][altspalte-1]==einheit3.kuerzel 
             || spielfeld[altzeile-1][altspalte-1]==einheit4.kuerzel
             || spielfeld[altzeile-1][altspalte-1]==einheit5.kuerzel
             )
</code></pre>
<p>Soetwas wird</p>
<pre><code class="language-cpp">while(&quot;zugriff auf irgendein algorithmus der für alle erstellten einheiten die Kürzel durchsucht)
</code></pre>
<p>Ich hoffe ich konnte halbwegs verständlich erklären was gemeint ist.</p>
<p>mfg Lucky Luke</p>
<p>PS Falls ihr den Titel nicht treffend findet nennt mir bitte einen der verständlicher ist als der jetztige damit ich ihn abändern kann.</p>
<pre><code class="language-cpp">struct einheitenwerte{
                 char kuerzel;};
       einheitenwerte einheit1;
       einheitenwerte einheit2;
       einheitenwerte einheit3;
       einheitenwerte einheit4;
       einheitenwerte einheit5;
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1883424</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883424</guid><dc:creator><![CDATA[Lucky Luke]]></dc:creator><pubDate>Thu, 15 Apr 2010 17:13:29 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 15:10:22 GMT]]></title><description><![CDATA[<p>Kurz gesagt: Du willst Funktionen.</p>
<p>Hast du ein Buch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883425</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883425</guid><dc:creator><![CDATA[Janjan]]></dc:creator><pubDate>Thu, 15 Apr 2010 15:10:22 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 15:16:25 GMT]]></title><description><![CDATA[<p>Naja wenns mit Funktionen klappt sehr gern.</p>
<p>Buch: Objektorientiertes Programmiern von Anfang an</p>
<p>Wie ich mit Funktionen umzugehen habe weiß ich eigentlich, immerhin sind es bei dem Spiel bereits 1100 Zeilen die fehlerfrei funktionieren, aber es ist zu umständlich Alles von anhand zu ändern und deswegen will ich jetzt so ziemlich alles &quot;automatisieren&quot; <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883432</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883432</guid><dc:creator><![CDATA[Lucky Luke]]></dc:creator><pubDate>Thu, 15 Apr 2010 15:16:25 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 15:44:51 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich hoffe noch ist Zeit:<br />
Pack die einheitenwerte in einen vector! Das Problem wirst du sonst noch andauernd bekommen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883446</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883446</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Thu, 15 Apr 2010 15:44:51 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 16:03:19 GMT]]></title><description><![CDATA[<p>Also bissl Plan habe ich von C++, aber wie funktioniert das mit dem vector.</p>
<p>Zur zusätzlichen Erklärung möchte ich noch darauf hinweisen das innerhalb des struct für viele verschieden Einheiten die Eerte gespeichert sind. Ich hoffe das geht mit einem vector trotzdem.</p>
<pre><code class="language-cpp">struct einheitenwerte{
                     char kuerzel;
                     int kampfkraftf;
                     int kampfkraftn;
                     int staerke;
                     int verteidigung;
                     int lebenspunkte;
                     int attacken;
                     int reichweite;
                     int mut;
                     int angweite;
                     int punktewert;};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1883462</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883462</guid><dc:creator><![CDATA[Lucky Luke]]></dc:creator><pubDate>Thu, 15 Apr 2010 16:03:19 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 16:20:57 GMT]]></title><description><![CDATA[<p>Mmh, vector Erklärungen findet sich im Netz sicherlich massenhaft.<br />
Die solltest du lesen, da kommst du früher oder später eh nicht drum herum.</p>
<p>Nur kurz skizziert:</p>
<pre><code class="language-cpp">//Statt deiner Variablen
  einheitenwerte einheit1;
  einheitenwerte einheit2;
  einheitenwerte einheit3;
  einheitenwerte einheit4;
  einheitenwerte einheit5;
// hat du einen
  vector&lt;einheitenwerte&gt; einheiten;
// in dem alle Einheiten gespeichert werden.
// Um später dann so Sachen wie 'kurzel vorhanden?' abzufragen, machst du dann sowas:

for(int i=0; i &lt; einheiten.size(); ++i)
{
  if(einheiten[i].kuerzel == 'X') // oder sowas
// mach was
}
</code></pre>
<p>Edit:<br />
Info's gibt's zB <a href="http://magazin.c-plusplus.net/artikel/Aufbau%20der%20STL%20-%20Teil%201%3A%20Container" rel="nofollow">hier</a> im Magazin.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883470</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883470</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Thu, 15 Apr 2010 16:20:57 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 16:24:25 GMT]]></title><description><![CDATA[<p>Danke, scheint verständlich.</p>
<p>Also kann ich dann innerhalb der whileschleife eine for-schleife durchlaufen lassen und wenn eine Kürzelübereinstimmung mit dem eingegeben Wert zutrifft wird das erkannt und die Schleife läuft weiter? (habe ich das so richtig verstanden?)</p>
<p>mfg Lucky Luke</p>
<p>Edit Also das wichtige an der Sache ist, dass ich das als Überprüfung der Bedingung der whileschleife brauche.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883474</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883474</guid><dc:creator><![CDATA[Lucky Luke]]></dc:creator><pubDate>Thu, 15 Apr 2010 16:24:25 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 16:27:53 GMT]]></title><description><![CDATA[<p>Nein, was für eine while-Schleife?<br />
Du wirst dir am besten eine Funktion bauen:</p>
<pre><code class="language-cpp">bool DeineKlasse::ExistiertKuerzel(char kuerzel)
{
  for(int i=0; i &lt; einheiten.size(); ++i)
  {
    if(einheiten[i].kuerzel == kuerzel)
      return true;   
  } 
  return false;
}
</code></pre>
<p>Ach so, ich sehe gerade:</p>
<blockquote>
<p>while(&quot;zugriff auf irgendein algorithmus der für alle erstellten einheiten die Kürzel durchsucht)</p>
</blockquote>
<p>Das meinst du, oder?<br />
Ja, das wird dann zu</p>
<pre><code class="language-cpp">while(instanz.ExistiertKuerzel('x')...)
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1883476</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883476</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Thu, 15 Apr 2010 16:27:53 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 16:36:49 GMT]]></title><description><![CDATA[<p>Genau, das letztere meine ich.</p>
<p>Aber wie ich anhand des beispiels sehe scheine ich dann dennoch alle kürzel eingeben zu müssen.</p>
<pre><code class="language-cli">while(instanz.ExistiertKuerzel('x')...
           instanz.ExistiertKuerzel('b')...)//das ich also hier den nächsten buchstaben abfrage??
</code></pre>
<p>Falls dies der fall ist bin ich ja wieder beim Ausgangsproblem das ich nicht bei jeder Schleife die kürzel hinzufügen möchte.</p>
<p>mfg Lucky Luke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883484</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883484</guid><dc:creator><![CDATA[Lucky Luke]]></dc:creator><pubDate>Thu, 15 Apr 2010 16:36:49 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 16:41:20 GMT]]></title><description><![CDATA[<p>Wo kommen denn diese Kürzel her, die du mit den Kürzel der Einheiten vergleichen willst?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883488</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883488</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Thu, 15 Apr 2010 16:41:20 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 16:52:06 GMT]]></title><description><![CDATA[<p>Diese kommen von einer vorrangegangen Abfrage.</p>
<pre><code class="language-cpp">cout &lt;&lt; &quot;Spalte:&quot;&lt;&lt;endl;
                     cin &gt;&gt; altspalte;                                        
                     cout &lt;&lt; &quot;Zeile:&quot;&lt;&lt;endl;
                     cin &gt;&gt; altzeile;
</code></pre>
<p>Um die Sache vllt etwas genauer zu erklären. Am anfang wird eine array erstellt und darüber ein Feld in der dos ausgabe realisiert. Anschließend werden die benutzten Einheiten auf das Feld gesetzt. Wenn ich diese bewegen möchte so wird die Zeile und Spalte abgefragt und dann soll überprüft werden ob der Buchstabe auf dem Feld mit einem einheitenkürzel der möglichen Einheiten von Player 1 übereinstimmt.</p>
<p>Da ich später weitere Einheiten implementieren möchte wäre es ein Riesenaufwand jedes mal alle Schleifen zu verändern, sodass ich das eben anders lösen möchte.</p>
<p>Ich hoffe dir ist die Funktionsweise jetzt vllt etwas klarer.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883493</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883493</guid><dc:creator><![CDATA[Lucky Luke]]></dc:creator><pubDate>Thu, 15 Apr 2010 16:52:06 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 16:58:19 GMT]]></title><description><![CDATA[<p>Lucky Luke schrieb:</p>
<blockquote>
<p>Ich hoffe dir ist die Funktionsweise jetzt vllt etwas klarer.</p>
</blockquote>
<p>Nö.<br />
Das sieht doch immer noch so aus wie am Anfang:</p>
<pre><code class="language-cpp">while(!(spielfeld[altzeile-1][altspalte-1]==einheit1.kuerzel
             || spielfeld[altzeile-1][altspalte-1]==einheit2.kuerzel
             || spielfeld[altzeile-1][altspalte-1]==einheit3.kuerzel
             || spielfeld[altzeile-1][altspalte-1]==einheit4.kuerzel
             || spielfeld[altzeile-1][altspalte-1]==einheit5.kuerzel
             )
</code></pre>
<p>Um die geht es doch und die kannst du doch durch</p>
<pre><code class="language-cpp">while(! ExistiertKuerzel(spielfeld[altzeile-1][altspalte-1]))...
</code></pre>
<p>ersetzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883498</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883498</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Thu, 15 Apr 2010 16:58:19 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 17:03:17 GMT]]></title><description><![CDATA[<p>Jockelx schrieb:</p>
<blockquote>
<p>Um die geht es doch und die kannst du doch durch</p>
<pre><code class="language-cpp">while(! ExistiertKuerzel(spielfeld[altzeile-1][altspalte-1]))...
</code></pre>
<p>ersetzen.</p>
</blockquote>
<p>Also würde diese eine Zeile alle vorhanden Kürzel überprüfen und bei einem Treffer die Schleife abbrechen?</p>
<p>Wenn du jetzt ja antwortest danke ich dir recht herzlich, ansonsten würde ich dir einen ausführlicheren Teil des Codes per pn schicken und alles bis ins kleinste Detail erläutern <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883506</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883506</guid><dc:creator><![CDATA[Lucky Luke]]></dc:creator><pubDate>Thu, 15 Apr 2010 17:03:17 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 17:10:05 GMT]]></title><description><![CDATA[<p>Ja, bitte schön <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 />
Aber versuch doch die sehr einfache Funktion 'ExistiertKuerzel' selber zu verstehen!<br />
Da passiert doch nichts wildes!?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883512</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883512</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Thu, 15 Apr 2010 17:10:05 GMT</pubDate></item><item><title><![CDATA[Reply to [gelöst] Benutzung von Strukturen in Schleifen on Thu, 15 Apr 2010 17:13:03 GMT]]></title><description><![CDATA[<p>Danke für die Hilfe.</p>
<p>Natürlich werde ich mir nun alles möglich dafür Notwendige aneignen, aber ich mußte ja erstmal von dir erfahren ob deine Überlegung im Endeffekt funktioniert.</p>
<p>mfg Lucky Luke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1883514</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1883514</guid><dc:creator><![CDATA[Lucky Luke]]></dc:creator><pubDate>Thu, 15 Apr 2010 17:13:03 GMT</pubDate></item></channel></rss>