<?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[DO-WHILE-Fehler]]></title><description><![CDATA[<p>Hallo Leute,</p>
<pre><code>do
    {
                                cout &lt;&lt; &quot;Geben Sie ihr Schussziel an: &quot; &lt;&lt; endl;
                                cin &gt;&gt; TargetLetter[i] &gt;&gt; TargetNumber[i];
                                if((TargetLetter[i] == ComputerLetters[i]) &amp;&amp; (TargetNumber[i] == ComputerNumbers[i]))
                                {                    cout &lt;&lt; &quot;Treffer!!&quot;;
                                                     ComputerLetters[i] = NULL;
                                                     }
                                }while((ComputerLetters != NULL) || (PlayerLetters != NULL));
</code></pre>
<p>Ist nur der Beginn der While-Schleife..aber selbst hier treten bereits Fehler auf.. Indem Moment wo die If-Anweisung True ergibt spamt er mir die Console mit Geben sie ein Schussziel an voll.. ist das cout &lt;&lt; &quot;Treffer!!&quot;; nicht in der If-Anweisung macht er dass nicht.. er beendet allerdings auch nicht die While-Schleife wenn ich alle ComputerLetters auf NULL gesetzt habe... ich bin mir aber auch nicht sicher ob ich dass so überhaupt machen kann.. Bitte um rasche Antwort.. Danke !</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/321049/do-while-fehler</link><generator>RSS for Node</generator><lastBuildDate>Thu, 23 Jul 2026 18:38:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/321049.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 22 Oct 2013 06:52:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 06:53:36 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<pre><code>do
    {
                                cout &lt;&lt; &quot;Geben Sie ihr Schussziel an: &quot; &lt;&lt; endl;
                                cin &gt;&gt; TargetLetter[i] &gt;&gt; TargetNumber[i];
                                if((TargetLetter[i] == ComputerLetters[i]) &amp;&amp; (TargetNumber[i] == ComputerNumbers[i]))
                                {                    cout &lt;&lt; &quot;Treffer!!&quot;;
                                                     ComputerLetters[i] = NULL;
                                                     }
                                }while((ComputerLetters != NULL) || (PlayerLetters != NULL));
</code></pre>
<p>Ist nur der Beginn der While-Schleife..aber selbst hier treten bereits Fehler auf.. Indem Moment wo die If-Anweisung True ergibt spamt er mir die Console mit Geben sie ein Schussziel an voll.. ist das cout &lt;&lt; &quot;Treffer!!&quot;; nicht in der If-Anweisung macht er dass nicht.. er beendet allerdings auch nicht die While-Schleife wenn ich alle ComputerLetters auf NULL gesetzt habe... ich bin mir aber auch nicht sicher ob ich dass so überhaupt machen kann.. Bitte um rasche Antwort.. Danke !</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362017</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362017</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 06:53:36 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 07:09:15 GMT]]></title><description><![CDATA[<p>Hier das ganze Beispiel..falls gefragt:</p>
<pre><code>#include &lt;cstdlib&gt;
#include &lt;iostream&gt;
#include &lt;stdlib.h&gt;
#include &lt;time.h&gt;
#include &lt;windows.h&gt;

using namespace std;

    //Random-Zahl erzeugen
    int getRandom(int SpielFeldGroesse)
    {
    int i = rand()%SpielFeldGroesse; //Erzeugt eine Random-Zahl zwischen 0 und 19
    return i;
    }

    char getAlphabet(int i)
    {
         char Alphabet[]=&quot;ABCDEFGHIJKLMN&quot;;
         return Alphabet[i];
     }

int main(int argc, char *argv[])
{
    /*time_t now = time(0); //Zeit in Sekunden seit 1 Januar 1970
    char *dt = ctime(&amp;now); //Konvertierung der Zeit in String mit Monat Tag etc.
    cout &lt;&lt; dt &lt;&lt; endl;*/
    srand(time(0));//Damit für den Random-Algorithmus immer ein neuer Zahlenwert zur Verfügung steht
    int SpielFeldGroesse=13;
    int AmountOfShips=3;
    int AmountOfShots=50;
    int ComputerNumbers[3];
    char ComputerLetters[3];
    int PlayerNumbers[3];
    char PlayerLetters[3];
    int TargetNumber[AmountOfShots];
    char TargetLetter[AmountOfShots];

    int i;
    //Random Computer-Schiffe festlegen
    for(i=0;i&lt;AmountOfShips;i++)
    {
                     ComputerNumbers[i]=getRandom(SpielFeldGroesse);
                     ComputerLetters[i]=getAlphabet(getRandom(SpielFeldGroesse));
                     }
    cout &lt;&lt; ComputerNumbers[0] &lt;&lt; endl &lt;&lt; ComputerNumbers[1] &lt;&lt; endl &lt;&lt; ComputerNumbers[2] &lt;&lt; endl; //Check-Ausgabe
    cout &lt;&lt; ComputerLetters[0] &lt;&lt; endl &lt;&lt; ComputerLetters[1] &lt;&lt; endl &lt;&lt; ComputerLetters[2] &lt;&lt; endl; //Check-Ausgabe

    //Spieler Erst-Eingabe
    for(i=0;i&lt;AmountOfShips;i++)
    {
                                cout &lt;&lt; &quot;Geben Sie die Position ihres &quot; &lt;&lt; i+1 &lt;&lt; &quot;ten Schiffes ein [A-N][0-13]: &quot; &lt;&lt; endl;
                                cin &gt;&gt; PlayerLetters[i] &gt;&gt; PlayerNumbers[i];
                                }
    cout &lt;&lt; &quot;Ihre Schiffspositionen lauten: &quot; &lt;&lt; endl;
    //Spieler-Ausgabe
    for(i=0;i&lt;AmountOfShips;i++)
    {
                                cout &lt;&lt; PlayerLetters[i] &lt;&lt; PlayerNumbers[i] &lt;&lt; endl;
                                }
    do
    {
                                cout &lt;&lt; &quot;Geben Sie ihr Schussziel an: &quot; &lt;&lt; endl;
                                cin &gt;&gt; TargetLetter[i] &gt;&gt; TargetNumber[i];
                                if((TargetLetter[i] == ComputerLetters[i]) &amp;&amp; (TargetNumber[i] == ComputerNumbers[i]))
                                {                    cout &lt;&lt; &quot;Treffer!!&quot;&lt;&lt;endl;
                                                     ComputerLetters[i] = NULL;
                                                     }
                                }while((ComputerLetters != NULL) || (PlayerLetters != NULL));

    system(&quot;PAUSE&quot;);
    return EXIT_SUCCESS;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2362020</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362020</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 07:09:15 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 07:11:43 GMT]]></title><description><![CDATA[<p>Hast vielleicht was falsches eingegeben, so dass die Eingabe das Fehlerbit setzt und daher nie mehr neu fragt?</p>
<p>Mach mal ein</p>
<pre><code>cin.clear();
cin.ignore(std::numeric_limits&lt;std::streamsize&gt;::max(), '\n');*
</code></pre>
<p>vor die if Abfrage.</p>
<p>*: Bin mir hier nicht ganz sicher ausem Kopf, ob das so richtig ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362023</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362023</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Tue, 22 Oct 2013 07:11:43 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 07:19:46 GMT]]></title><description><![CDATA[<p>Wie sollen denn <code>ComputerLetters</code> und <code>PlayerLetters</code> jemals <code>NULL</code> werden?<br />
1. veränderst du sie nicht in der Schleife und<br />
2. wäre das auch gar nicht möglich, da es Arrays sind.</p>
<p>Was möchtest du da wirklich prüfen?</p>
<p>Dein Einrückungsstil ist grauenhaft.<br />
Man nimmt erstmal an, das die } aus Zeile 69 zu de { aus Zeile 66 gehört.</p>
<p>Die } bei do while gehört in die selbe Spalte wie das d vom do oder in die selbe Spalte wie die {. (Oder beides)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362026</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362026</guid><dc:creator><![CDATA[DirkB]]></dc:creator><pubDate>Tue, 22 Oct 2013 07:19:46 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 07:22:35 GMT]]></title><description><![CDATA[<p>Hallo Skym0sh,</p>
<p>Ja jetzt spamt er es nicht mehr voll. Allerdings funktioniert der break immernoch nicht. Also die Bedingung in der while Schleife..und in die IF-Schleife hüpft er auch nicht. LG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362027</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362027</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 07:22:35 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 07:28:20 GMT]]></title><description><![CDATA[<p>DirkB schrieb:</p>
<blockquote>
<p>Wie sollen denn <code>ComputerLetters</code> und <code>PlayerLetters</code> jemals <code>NULL</code> werden?<br />
1. veränderst du sie nicht in der Schleife und<br />
2. wäre das auch gar nicht möglich, da es Arrays sind.</p>
<p>Was möchtest du da wirklich prüfen?</p>
<p>Dein Einrückungsstil ist grauenhaft.<br />
Man nimmt erstmal an, das die } aus Zeile 69 zu de { aus Zeile 66 gehört.</p>
<p>Die } bei do while gehört in die selbe Spalte wie das d vom do oder in die selbe Spalte wie die {. (Oder beides)</p>
</blockquote>
<p>Doch tue ich..siehe IF-Schleife in der While-Schleife (Falls das so funktioniert)... Die PlayerLetters sind noch nicht in die While-Schleife eingebaut..ist aber auch unnötig für dass hier, da Sie sowieso Oder-Verknüpft sind.. Nicht Man nimmt erstmal an, sondern Du.. das ist der Einrückungsstil von devcpp, beschwer dich dort bevor du mich kritisierst.. Es ist doch wohl klar dass sie Klammer vor while nur zur Klammer nach Do gehören kann... geht ja gar nicht anders....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362029</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362029</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 07:28:20 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 07:41:02 GMT]]></title><description><![CDATA[<p>MikeTheT schrieb:</p>
<blockquote>
<p>Doch tue ich..siehe IF-Schleife in der While-Schleife (Falls das so funktioniert)... Die PlayerLetters sind noch nicht in die While-Schleife eingebaut..ist aber auch unnötig für dass hier, da Sie sowieso Oder-Verknüpft sind..</p>
</blockquote>
<p>Nein, du veränderst Elemente in dem Array.<br />
Weisst was ComputerLetters ohne Indizes überhaupt bedeutet?</p>
<p>MikeTheT schrieb:</p>
<blockquote>
<p>Nicht Man nimmt erstmal an, sondern Du.. das ist der Einrückungsstil von devcpp, beschwer dich dort bevor du mich kritisierst.. Es ist doch wohl klar dass sie Klammer vor while nur zur Klammer nach Do gehören kann... geht ja gar nicht anders....</p>
</blockquote>
<p>Er bleibt grauenhaft. Der Einrückungsstil soll die visuelle Erkennung der Blöcke unterstützen. Wenn man erst lesen muss, wo das while zum do versteckt ist, kann man drauf verzichten.<br />
Aber dann wird es auch keiner mehr lesen.</p>
<p><a href="http://de.wikipedia.org/wiki/Einr%C3%BCckungsstil" rel="nofollow">http://de.wikipedia.org/wiki/Einr%C3%BCckungsstil</a><br />
<a href="http://www.if-schleife.de/" rel="nofollow">http://www.if-schleife.de/</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362032</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362032</guid><dc:creator><![CDATA[DirkB]]></dc:creator><pubDate>Tue, 22 Oct 2013 07:41:02 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 07:42:23 GMT]]></title><description><![CDATA[<p>MikeTheT schrieb:</p>
<blockquote>
<p>DirkB schrieb:</p>
<blockquote>
<p>Wie sollen denn <code>ComputerLetters</code> und <code>PlayerLetters</code> jemals <code>NULL</code> werden?<br />
1. veränderst du sie nicht in der Schleife und<br />
2. wäre das auch gar nicht möglich, da es Arrays sind.</p>
<p>Was möchtest du da wirklich prüfen?</p>
<p>Dein Einrückungsstil ist grauenhaft.<br />
Man nimmt erstmal an, das die } aus Zeile 69 zu de { aus Zeile 66 gehört.</p>
<p>Die } bei do while gehört in die selbe Spalte wie das d vom do oder in die selbe Spalte wie die {. (Oder beides)</p>
</blockquote>
<p>Doch tue ich..siehe IF-Schleife in der While-Schleife (Falls das so funktioniert)... Die PlayerLetters sind noch nicht in die While-Schleife eingebaut..ist aber auch unnötig für dass hier, da Sie sowieso Oder-Verknüpft sind.. Nicht Man nimmt erstmal an, sondern Du.. das ist der Einrückungsstil von devcpp, beschwer dich dort bevor du mich kritisierst.. Es ist doch wohl klar dass sie Klammer vor while nur zur Klammer nach Do gehören kann... geht ja gar nicht anders....</p>
</blockquote>
<p>Komm mal wieder runter. DirkB hat recht. Und egal ob der Intendationstyle von dir, von DevC++ oder vom kaiser von China gemacht ist.</p>
<p>Objektiv gesehen ist der totale scheisse.<br />
(Auch ein Grund warum ich deinen Code aus dem Eingangspsot nichtmals durchgelesen hab.)</p>
<p>Jetzt, wo du den ganzen Code gepostet hast, der ganze Einrückungsstil ist schlecht. Darüber hinaus ist DevCpp mehr als veraltet. Nimm entweder CodeBlocks oder Netbeans oder Eclipse oder Visual Studio(wenn Windows).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362034</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362034</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Tue, 22 Oct 2013 07:42:23 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 07:53:44 GMT]]></title><description><![CDATA[<p>Skym0sh0 schrieb:</p>
<blockquote>
<p>Komm mal wieder runter. DirkB hat recht. Und egal ob der Intendationstyle von dir, von DevC++ oder vom kaiser von China gemacht ist.</p>
<p>Objektiv gesehen ist der totale scheisse.<br />
(Auch ein Grund warum ich deinen Code aus dem Eingangspsot nichtmals durchgelesen hab.)</p>
<p>Jetzt, wo du den ganzen Code gepostet hast, der ganze Einrückungsstil ist schlecht. Darüber hinaus ist DevCpp mehr als veraltet. Nimm entweder CodeBlocks oder Netbeans oder Eclipse oder Visual Studio(wenn Windows).</p>
</blockquote>
<p>Nein tu ich nicht! Der Ton macht die Musik, und es kommt sehr wohl darauf an wie man wem etwas sagt! Alles beruht auf Resonanz.. wie man in den Wald hineinruft so kommt es auch zurück. Ihr könnt ihr gerne sagen was ich besser machen soll, ihr kennt euch sicher besser aus als ich ! Aber wie, ist mir sehr wichtig... LG und bitte um weitere Hilfestellungen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362036</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362036</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 07:53:44 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 07:55:17 GMT]]></title><description><![CDATA[<p>MikeTheT schrieb:</p>
<blockquote>
<p>Skym0sh0 schrieb:</p>
<blockquote>
<p>Komm mal wieder runter. DirkB hat recht. Und egal ob der Intendationstyle von dir, von DevC++ oder vom kaiser von China gemacht ist.</p>
<p>Objektiv gesehen ist der totale scheisse.<br />
(Auch ein Grund warum ich deinen Code aus dem Eingangspsot nichtmals durchgelesen hab.)</p>
<p>Jetzt, wo du den ganzen Code gepostet hast, der ganze Einrückungsstil ist schlecht. Darüber hinaus ist DevCpp mehr als veraltet. Nimm entweder CodeBlocks oder Netbeans oder Eclipse oder Visual Studio(wenn Windows).</p>
</blockquote>
<p>Nein tu ich nicht! Der Ton macht die Musik, und es kommt sehr wohl darauf an wie man wem etwas sagt! Alles beruht auf Resonanz.. wie man in den Wald hineinruft so kommt es auch zurück. Ihr könnt ihr gerne sagen was ich besser machen soll, ihr kennt euch sicher besser aus als ich ! Aber wie, ist mir sehr wichtig...<br />
und was soll dein Ton? Du verlangst von mir runterzukommen aber selber nochmal drüberfahren, nein danke.. und wenn dass sowieso nur mit ein Grund war, hätte es ja auch nichts gebracht den schön zu formatieren... LG und bitte um weitere Hilfestellungen</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/2362038</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362038</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 07:55:17 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 07:57:31 GMT]]></title><description><![CDATA[<p>Skym0sh0 schrieb:</p>
<blockquote>
<p>Komm mal wieder runter. DirkB hat recht. Und egal ob der Intendationstyle von dir, von DevC++ oder vom kaiser von China gemacht ist.</p>
<p>Objektiv gesehen ist der totale scheisse.<br />
(Auch ein Grund warum ich deinen Code aus dem Eingangspsot nichtmals durchgelesen hab.)</p>
<p>Jetzt, wo du den ganzen Code gepostet hast, der ganze Einrückungsstil ist schlecht. Darüber hinaus ist DevCpp mehr als veraltet. Nimm entweder CodeBlocks oder Netbeans oder Eclipse oder Visual Studio(wenn Windows).</p>
</blockquote>
<p>Nein tu ich nicht! Der Ton macht die Musik, und es kommt sehr wohl darauf an wie man wem etwas sagt! Alles beruht auf Resonanz.. wie man in den Wald hineinruft so kommt es auch zurück. Ihr könnt ihr gerne sagen was ich besser machen soll, ihr kennt euch sicher besser aus als ich ! Aber wie, ist mir sehr wichtig...<br />
und was soll dein Ton? Du verlangst von mir runterzukommen aber selber nochmal drüberfahren, nein danke.. und wenn dass sowieso nur mit ein Grund war, hätte es ja auch nichts gebracht den schön zu formatieren... LG und bitte um weitere Hilfestellungen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362039</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362039</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 07:57:31 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 07:59:24 GMT]]></title><description><![CDATA[<p>Sorry für die Doppelposts..hab mich im Affekt verklickt...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362041</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362041</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 07:59:24 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 08:03:50 GMT]]></title><description><![CDATA[<p>MikeTheT schrieb:</p>
<blockquote>
<p>Skym0sh0 schrieb:</p>
<blockquote>
<p>Komm mal wieder runter. DirkB hat recht. Und egal ob der Intendationstyle von dir, von DevC++ oder vom kaiser von China gemacht ist.</p>
<p>Objektiv gesehen ist der totale scheisse.<br />
(Auch ein Grund warum ich deinen Code aus dem Eingangspsot nichtmals durchgelesen hab.)</p>
<p>Jetzt, wo du den ganzen Code gepostet hast, der ganze Einrückungsstil ist schlecht. Darüber hinaus ist DevCpp mehr als veraltet. Nimm entweder CodeBlocks oder Netbeans oder Eclipse oder Visual Studio(wenn Windows).</p>
</blockquote>
<p>Nein tu ich nicht! Der Ton macht die Musik, und es kommt sehr wohl darauf an wie man wem etwas sagt! Alles beruht auf Resonanz.. wie man in den Wald hineinruft so kommt es auch zurück. Ihr könnt ihr gerne sagen was ich besser machen soll, ihr kennt euch sicher besser aus als ich ! Aber wie, ist mir sehr wichtig... LG und bitte um weitere Hilfestellungen</p>
</blockquote>
<p>Der Ton von DirkB war noch ganz in Ordnung und sachlich, sowas musste hier akzeptieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362043</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362043</guid><dc:creator><![CDATA[kenner der töne]]></dc:creator><pubDate>Tue, 22 Oct 2013 08:03:50 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 08:08:42 GMT]]></title><description><![CDATA[<p>Visual Studio würde so einrücken.<br />
(Tasten Strg+A, Alt+F8, bzw Menu &quot;Bearbeiten/Alles markieren&quot;, &quot;Bearbeiten/Erweitert/Auswahl formatieren&quot;)<br />
Schau, wie eisern immer die schließende geschweifte Klammer genau unter der passenden öffnenden ist. Mußt zugeben, daß das beim Lesen hilfreich ist.</p>
<pre><code>#include &lt;cstdlib&gt;
#include &lt;iostream&gt;
#include &lt;stdlib.h&gt;
#include &lt;time.h&gt;
#include &lt;windows.h&gt;

using namespace std;

//Random-Zahl erzeugen
int getRandom(int SpielFeldGroesse)
{
	int i = rand()%SpielFeldGroesse; //Erzeugt eine Random-Zahl zwischen 0 und 19
	return i;
}

char getAlphabet(int i)
{
	char Alphabet[]=&quot;ABCDEFGHIJKLMN&quot;;
	return Alphabet[i];
}

int main(int argc, char *argv[])
{
	/*time_t now = time(0); //Zeit in Sekunden seit 1 Januar 1970
	char *dt = ctime(&amp;now); //Konvertierung der Zeit in String mit Monat Tag etc.
	cout &lt;&lt; dt &lt;&lt; endl;*/
	srand(time(0));//Damit für den Random-Algorithmus immer ein neuer Zahlenwert zur Verfügung steht
	int SpielFeldGroesse=13;
	int AmountOfShips=3;
	int AmountOfShots=50;
	int ComputerNumbers[3];
	char ComputerLetters[3];
	int PlayerNumbers[3];
	char PlayerLetters[3];
	int TargetNumber[AmountOfShots];
	char TargetLetter[AmountOfShots];

	int i;
	//Random Computer-Schiffe festlegen
	for(i=0;i&lt;AmountOfShips;i++)
	{
		ComputerNumbers[i]=getRandom(SpielFeldGroesse);
		ComputerLetters[i]=getAlphabet(getRandom(SpielFeldGroesse));
	}
	cout &lt;&lt; ComputerNumbers[0] &lt;&lt; endl &lt;&lt; ComputerNumbers[1] &lt;&lt; endl &lt;&lt; ComputerNumbers[2] &lt;&lt; endl; //Check-Ausgabe
	cout &lt;&lt; ComputerLetters[0] &lt;&lt; endl &lt;&lt; ComputerLetters[1] &lt;&lt; endl &lt;&lt; ComputerLetters[2] &lt;&lt; endl; //Check-Ausgabe

	//Spieler Erst-Eingabe
	for(i=0;i&lt;AmountOfShips;i++)
	{
		cout &lt;&lt; &quot;Geben Sie die Position ihres &quot; &lt;&lt; i+1 &lt;&lt; &quot;ten Schiffes ein [A-N][0-13]: &quot; &lt;&lt; endl;
		cin &gt;&gt; PlayerLetters[i] &gt;&gt; PlayerNumbers[i];
	}
	cout &lt;&lt; &quot;Ihre Schiffspositionen lauten: &quot; &lt;&lt; endl;
	//Spieler-Ausgabe
	for(i=0;i&lt;AmountOfShips;i++)
	{
		cout &lt;&lt; PlayerLetters[i] &lt;&lt; PlayerNumbers[i] &lt;&lt; endl;
	}
	do
	{
		cout &lt;&lt; &quot;Geben Sie ihr Schussziel an: &quot; &lt;&lt; endl;
		cin &gt;&gt; TargetLetter[i] &gt;&gt; TargetNumber[i];
		if((TargetLetter[i] == ComputerLetters[i]) &amp;&amp; (TargetNumber[i] == ComputerNumbers[i]))
		{                    
			cout &lt;&lt; &quot;Treffer!!&quot;&lt;&lt;endl;
			ComputerLetters[i] = NULL;
		}
	}while((ComputerLetters != NULL) || (PlayerLetters != NULL));

	system(&quot;PAUSE&quot;);
	return EXIT_SUCCESS;
}
</code></pre>
<p>Und die Einrückung, die Du hattest, war schon ein wenig komisch. Unter Profis wäre die sogar unhöflich gewesen.</p>
<p>Ab besten immer mal wieder und anfangs immer vor dem Posten kurz von der IDE richten lassen. Bei Code::Blocks der Menupunkt &quot;Format using AStyle&quot;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362044</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362044</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 22 Oct 2013 08:08:42 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 08:08:06 GMT]]></title><description><![CDATA[<p>Gewöhn dich an einen solchen Ton in Programmiererforen. Da gehts rabiater zu als bei Mama aufem Schoß <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>Wie du deinen Code einrückst oder nicht, das hat keinen semantischen Unterschied. Dem Compiler ist Schönheit und Übersichtlichkeit egal, dafür ists ein Programm.</p>
<p>Aber ein Mensch hat's weit schwerer. Fremde, die deinen Code noch nicht gesehen haben, finden langsamer und schlechter hinein. Oder werden sogar ganz abgeschreckt und schauen erst gar nicht rein.</p>
<p>Und irgendwann kommst auch du an den Punkt, wo du dich mal eben verliest und vertust, und dann setzt du eine Klammer falsch. Und das wird nicht immer einen Compilerfehler geben. Und dann wirst du merken: &quot;Oh schaise, wo ist mein Fehler? ich hab doch alles richtig gemacht.&quot;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362045</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362045</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Tue, 22 Oct 2013 08:08:06 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 08:09:22 GMT]]></title><description><![CDATA[<blockquote>
<p>Und die Einrückung, die Du hattest, war schon ein wenig komisch. Unter Profis wäre die sogar unhöflich gewesen.</p>
<p>Ab besten immer mal wieder und anfangs immer vor dem Posten kurz von der IDE richten lassen. Bei Code::Blocks der Menupunkt &quot;Format using AStyle&quot;.</p>
</blockquote>
<p>Werde ich beim nächsten Mal beachten, danke !!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362046</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362046</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 08:09:22 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 08:15:26 GMT]]></title><description><![CDATA[<p>Skym0sh0 schrieb:</p>
<blockquote>
<p>Gewöhn dich an einen solchen Ton in Programmiererforen. Da gehts rabiater zu als bei Mama aufem Schoß <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>Wie du deinen Code einrückst oder nicht, das hat keinen semantischen Unterschied. Dem Compiler ist Schönheit und Übersichtlichkeit egal, dafür ists ein Programm.</p>
<p>Aber ein Mensch hat's weit schwerer. Fremde, die deinen Code noch nicht gesehen haben, finden langsamer und schlechter hinein. Oder werden sogar ganz abgeschreckt und schauen erst gar nicht rein.</p>
<p>Und irgendwann kommst auch du an den Punkt, wo du dich mal eben verliest und vertust, und dann setzt du eine Klammer falsch. Und das wird nicht immer einen Compilerfehler geben. Und dann wirst du merken: &quot;Oh schaise, wo ist mein Fehler? ich hab doch alles richtig gemacht.&quot;</p>
</blockquote>
<p>Da hast du Recht was den Code und das Einlesen betrifft! Mit der Mama muss ich dir vll widersprechen ! hehe <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="😉"
    /> LG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362047</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362047</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 08:15:26 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 08:21:36 GMT]]></title><description><![CDATA[<p>Ich hab mal einen hilfreichen Plan hochgeladen, damit man sieht, welche Klammern zu welchen gehören.<br />
<a href="http://www.youscreen.de/mrhofmez31.jpg" rel="nofollow">http://www.youscreen.de/mrhofmez31.jpg</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362049</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362049</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Tue, 22 Oct 2013 08:21:36 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 08:23:22 GMT]]></title><description><![CDATA[<p>MikeTheT schrieb:</p>
<blockquote>
<p>Ihr könnt ihr gerne sagen was ich besser machen soll, ihr kennt euch sicher besser aus als ich ! Aber wie, ist mir sehr wichtig... LG und bitte um weitere Hilfestellungen</p>
</blockquote>
<p>Habe ich ja gemacht. Sogar mit Begründung.</p>
<p>Dein eigentliches Problem ist aber ein anderes.<br />
Wie sieht es damit aus.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362051</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362051</guid><dc:creator><![CDATA[DirkB]]></dc:creator><pubDate>Tue, 22 Oct 2013 08:23:22 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 11:44:28 GMT]]></title><description><![CDATA[<p>DirkB schrieb:</p>
<blockquote>
<p>Dein eigentliches Problem ist aber ein anderes.<br />
Wie sieht es damit aus.</p>
</blockquote>
<p>DirkB schrieb:</p>
<blockquote>
<p>Dein eigentliches Problem ist aber ein anderes.<br />
Wie sieht es damit aus.</p>
</blockquote>
<pre><code>do
    {
                                cout &lt;&lt; &quot;Geben Sie ihr Schussziel an: &quot; &lt;&lt; endl;
                                cin &gt;&gt; TargetLetter[i] &gt;&gt; TargetNumber[i];
                                cin.clear(); 
                                cin.ignore(std::numeric_limits&lt;std::streamsize&gt;::max(), '\n');
                                                     if((TargetLetter[i] == ComputerLetters[i]) &amp;&amp; (TargetNumber[i] == ComputerNumbers[i]))
                                                     {                    
                                                     cout &lt;&lt; &quot;Treffer!!&quot;&lt;&lt;endl;
                                                     ComputerLetters[i] = NULL;
                                                     }
                                cout &lt;&lt; TargetLetter[i];
    }while((ComputerLetters != NULL) || (PlayerLetters != NULL));
</code></pre>
<p>Hallo Dirk, schau bitte in die IF-Schleife..ich bilde mir ein, dass ich hier ComputerLetters[i] auf NULL setze..bin mir aber nicht sicher ob es so funktioniert... auch ob der Ausdruck in der while schleife so funktioniert/richtig ist... das problem und wie es sich zeigt hab ich ganz am anfang schon erklärt.. LG Michi ..so jetzt müsste es auch deutlich besser zu lesen sein LG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362119</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362119</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 11:44:28 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 11:47:30 GMT]]></title><description><![CDATA[<p>Schau dir doch mal die while-Bedingung ganz genau an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362120</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362120</guid><dc:creator><![CDATA[daddy_felix]]></dc:creator><pubDate>Tue, 22 Oct 2013 11:47:30 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 11:50:16 GMT]]></title><description><![CDATA[<p>um es noch genauer zu machen. Was ist der Unterschied zwischen ComputerLetters und ComputerLetters[i]?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362121</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362121</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Tue, 22 Oct 2013 11:50:16 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 11:58:40 GMT]]></title><description><![CDATA[<p>Hallo, ich glaube der Fehler liegt schon davor irgendwo.. lasse ich mir in der While mittels :</p>
<pre><code>cout &lt;&lt; TargetLetter[i] &lt;&lt; ComputerLetters[i] &lt;&lt; endl &lt;&lt; TargetNumber[i] &lt;&lt; ComputerNumbers[i] &lt;&lt; endl;
</code></pre>
<p>Die Werte anzeigen, zeigt er mir für ComputerLetters[i] gar nichts an und für ComputerNumbers[i] 224 die ganze zeit..obwohl es eine Zahl zwischen 0 und 13 sein sollte LG</p>
<p>Ich habe vermutet das wenn ich CumputerLetters != Null setze, das ganze Array damit interpretiert wird, und ich nicht jedes einzelne per Adresse angeben muss.. LG Mike</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362123</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362123</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 11:58:40 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 12:11:35 GMT]]></title><description><![CDATA[<p>Nochmal.<br />
Welchen Typ hat ComputerLetters<br />
und welchen ComputerLetters[i]</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362124</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362124</guid><dc:creator><![CDATA[Braunstein]]></dc:creator><pubDate>Tue, 22 Oct 2013 12:11:35 GMT</pubDate></item><item><title><![CDATA[Reply to DO-WHILE-Fehler on Tue, 22 Oct 2013 12:16:02 GMT]]></title><description><![CDATA[<p>Braunstein schrieb:</p>
<blockquote>
<p>Nochmal.<br />
Welchen Typ hat ComputerLetters<br />
und welchen ComputerLetters[i]</p>
</blockquote>
<p>Hallo einen Fehler hab ich schon...es gibt natürlich kein i in der do-while-schleife..wodurch er irgendwelche Werte hat ist eh klar...</p>
<p>Das eine ist ein Typ Char das andere ein Typ Char-Array falls du darauf hinaus willst. LG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2362125</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2362125</guid><dc:creator><![CDATA[MikeTheT]]></dc:creator><pubDate>Tue, 22 Oct 2013 12:16:02 GMT</pubDate></item></channel></rss>