<?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[Einfaches Tool voller Fehler]]></title><description><![CDATA[<p>Eigentlich ist es Einfach. Aber es läuft nicht.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt; 
#include &lt;string&gt; 
#include &lt;sstream&gt; 
using namespace std;
int main ()
{
int Rundenzhler = 0;
int Ergebnis; 

for (int Ziffer1=0; Ziffer1&lt;10; Ziffer1++)
 {
		for (int Ziffer2=0; Ziffer2&lt;10; Ziffer2++)
		{
		Ergebnis=Ziffer1*Ziffer2;
		Rundenzhler=Rundenzhler+1;
		If (Ergebnis &gt; 0) ;
		{
		cout&lt;&lt;Rundenzhler&lt;&lt;&quot;.  Ergebnis = &quot;&lt;&lt;Ergebnis&lt;&lt;&quot;\n&quot;;	
		}
		else
		{
		int Nzler=Nzler+1;
		}
		} 		
}
cout&lt;&lt;&quot;Nullzähler = &quot;&lt;&lt;Nzler&lt;&lt;&quot;\n&quot;; 
}
</code></pre>
<p>Bis zum Einbau des If funktionierte ALLES.</p>
<p>Ich bekomme folgenden Ausdruck.</p>
<p>main.cpp:16: error: 'If' was not declared in this scope<br />
main.cpp:20: error: expected unqualified-id before 'else'<br />
main.cpp:20: error: expected <code>}' before 'else' main.cpp:20: error: expected</code>}' before 'else'<br />
main.cpp:20: error: expected `}' before 'else'<br />
main.cpp:24: error: expected declaration before '}' token</p>
<p>Seit wann muß man &quot;if&quot;, einen Befehl deklarieren?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/285940/einfaches-tool-voller-fehler</link><generator>RSS for Node</generator><lastBuildDate>Fri, 21 Aug 2026 03:29:42 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/285940.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 30 Apr 2011 10:03:03 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 10:03:03 GMT]]></title><description><![CDATA[<p>Eigentlich ist es Einfach. Aber es läuft nicht.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt; 
#include &lt;string&gt; 
#include &lt;sstream&gt; 
using namespace std;
int main ()
{
int Rundenzhler = 0;
int Ergebnis; 

for (int Ziffer1=0; Ziffer1&lt;10; Ziffer1++)
 {
		for (int Ziffer2=0; Ziffer2&lt;10; Ziffer2++)
		{
		Ergebnis=Ziffer1*Ziffer2;
		Rundenzhler=Rundenzhler+1;
		If (Ergebnis &gt; 0) ;
		{
		cout&lt;&lt;Rundenzhler&lt;&lt;&quot;.  Ergebnis = &quot;&lt;&lt;Ergebnis&lt;&lt;&quot;\n&quot;;	
		}
		else
		{
		int Nzler=Nzler+1;
		}
		} 		
}
cout&lt;&lt;&quot;Nullzähler = &quot;&lt;&lt;Nzler&lt;&lt;&quot;\n&quot;; 
}
</code></pre>
<p>Bis zum Einbau des If funktionierte ALLES.</p>
<p>Ich bekomme folgenden Ausdruck.</p>
<p>main.cpp:16: error: 'If' was not declared in this scope<br />
main.cpp:20: error: expected unqualified-id before 'else'<br />
main.cpp:20: error: expected <code>}' before 'else' main.cpp:20: error: expected</code>}' before 'else'<br />
main.cpp:20: error: expected `}' before 'else'<br />
main.cpp:24: error: expected declaration before '}' token</p>
<p>Seit wann muß man &quot;if&quot;, einen Befehl deklarieren?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056388</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056388</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 10:03:03 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 10:10:04 GMT]]></title><description><![CDATA[<p>Man muß ein if() nicht deklarieren, aber man sollte es schon richtig schreiben <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="😉"
    /> (und C++ achtet im Gegensatz zu einigen anderen Sprachen auf die Groß-/Kleinschreibung)</p>
<p>Außerdem hast du hinter dem if ein überflüssiges Semikolon.</p>
<p>PS: Und dein Einrückungsstil ist miserabel</p>
<p>Edit: Und eine Variablendefinition <code>int Nzler=Nzler+1;</code> ist auch unsinnig - du solltest die Variable am Anfang mit 0 initialisieren und in der Schleife nur erhöhen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056391</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056391</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 30 Apr 2011 10:10:04 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 10:29:13 GMT]]></title><description><![CDATA[<p>So funktioniert alles,</p>
<pre><code class="language-cpp">#include &lt;iostream&gt; 
#include &lt;string&gt; 
#include &lt;sstream&gt; 
using namespace std;
int main ()
{
int Rundenzhler = 0;
int Ergebnis;
int Nzler;

for (int Ziffer1=0; Ziffer1&lt;10; Ziffer1++)
 {
		for (int Ziffer2=0; Ziffer2&lt;10; Ziffer2++)
		{
		Ergebnis=Ziffer1*Ziffer2;
		Rundenzhler=Rundenzhler+1;		
		if (Ergebnis &gt; 0) 		
		cout&lt;&lt;Rundenzhler&lt;&lt;&quot;.  Ergebnis = &quot;&lt;&lt;Ergebnis&lt;&lt;&quot;\n&quot;;			
		else		
		Nzler=Nzler+1;		
		} 		
}
cout&lt;&lt;&quot;Nullzähler = &quot;&lt;&lt;Nzler&lt;&lt;&quot;\n&quot;; 
}
</code></pre>
<p>Aber, wenn ich den Rundenzhler zwischen If und cout mach,wo ichihn hinhaben will, wie hier;</p>
<pre><code class="language-cpp">#include &lt;iostream&gt; 
#include &lt;string&gt; 
#include &lt;sstream&gt; 
using namespace std;
int main ()
{
int Rundenzhler = 0;
int Ergebnis;
int Nzler;

for (int Ziffer1=0; Ziffer1&lt;10; Ziffer1++)
 {
		for (int Ziffer2=0; Ziffer2&lt;10; Ziffer2++)
		{
		Ergebnis=Ziffer1*Ziffer2;

		if (Ergebnis &gt; 0) 
		Rundenzhler=Rundenzhler+1;			
		cout&lt;&lt;Rundenzhler&lt;&lt;&quot;.  Ergebnis = &quot;&lt;&lt;Ergebnis&lt;&lt;&quot;\n&quot;;			
		else		
		Nzler=Nzler+1;		
		} 		
}
cout&lt;&lt;&quot;Nullzähler = &quot;&lt;&lt;Nzler&lt;&lt;&quot;\n&quot;; 
}
</code></pre>
<p>krieg ich folgende Meldung, die ich nicht versteh:</p>
<p>main.cpp:9: warning: unused variable 'Nzler'<br />
main.cpp:20: error: expected unqualified-id before 'else'<br />
main.cpp:20: error: expected <code>}' before 'else' main.cpp:20: error: expected</code>}' before 'else'<br />
main.cpp:20: error: expected `}' before 'else'<br />
main.cpp:22: error: expected declaration before '}' token</p>
<p>Es hat doch vorher geklappt, und der Befehl funktioniert doch vor dem If auch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056405</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056405</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 10:29:13 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 10:37:19 GMT]]></title><description><![CDATA[<p>Wenn du bei if oder else die {} weglässt, dann gilt nur die 1. Anweisung, also bis zum 1. Semikolon. Bei dir stehen aber hinter deinem if ( ohne die{} ) 2 Anweisungen und dann kommt das else, was der compiler nicht will und dich sogar mehr oder weniger fragt,ob du denn nicht die Klammern um den if-block vergessen hast.</p>
<p>Dein Einrückungsstil ist immernoch miserablel ^^ Eher nicht vorhanden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056407</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056407</guid><dc:creator><![CDATA[cvcv]]></dc:creator><pubDate>Sat, 30 Apr 2011 10:37:19 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 10:47:01 GMT]]></title><description><![CDATA[<p>Ist der Einrückungsstiel so besser?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt; 
#include &lt;string&gt; 
#include &lt;sstream&gt; 
using namespace std;
int main ()
{
int Rundenzhler = 0;
int Ergebnis;
int Nzler;

for (int Ziffer1=0; Ziffer1&lt;10; Ziffer1++)
 {
		for (int Ziffer2=0; Ziffer2&lt;10; Ziffer2++)
		{
		Ergebnis=Ziffer1*Ziffer2;				
		if (Ergebnis &gt; 0) 
			{	
			Rundenzhler=Rundenzhler+1;	
			cout&lt;&lt;Rundenzhler&lt;&lt;&quot;.  Ergebnis = &quot;&lt;&lt;Ergebnis&lt;&lt;&quot;\n&quot;;	
			} 		
		else
			{		
			Nzler=Nzler+1;	
			} 	
		} 		
}
cout&lt;&lt;&quot;Nullzähler = &quot;&lt;&lt;Nzler&lt;&lt;&quot;\n&quot;; 
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2056411</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056411</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 10:47:01 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 11:00:30 GMT]]></title><description><![CDATA[<p>Ehm, nicht unbedingt.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;sstream&gt;
using namespace std;
int main ()
{
    int Rundenzhler = 0;
    int Ergebnis;
    int Nzler;

    for (int Ziffer1=0; Ziffer1&lt;10; Ziffer1++)
    {
        for (int Ziffer2=0; Ziffer2&lt;10; Ziffer2++)
        {
            Ergebnis=Ziffer1*Ziffer2;               
            if (Ergebnis &gt; 0)
            {   
                Rundenzhler=Rundenzhler+1;   
                cout&lt;&lt;Rundenzhler&lt;&lt;&quot;.  Ergebnis = &quot;&lt;&lt;Ergebnis&lt;&lt;&quot;\n&quot;;   
            }        
            else
            {       
                Nzler=Nzler+1;   
            }    
        }        
    }

    cout&lt;&lt;&quot;Nullzähler = &quot;&lt;&lt;Nzler&lt;&lt;&quot;\n&quot;;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2056417</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056417</guid><dc:creator><![CDATA[freaky]]></dc:creator><pubDate>Sat, 30 Apr 2011 11:00:30 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 11:12:42 GMT]]></title><description><![CDATA[<p>Ich wollte es jetzt so machen, daß er nur noch die Ergebnisse der Multiplikation ausgibt, und zwar nur einmal am Ende des Programms, und zwar als Liste, mit einer zahl dahinter, wie oft die Zahl Ergebnis war.</p>
<p>Das geht irgendwie mit Array. kann mir jemand einen Vorschlag machen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056422</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056422</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 11:12:42 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 12:23:20 GMT]]></title><description><![CDATA[<p>Das könnte man mit einem Array machen, aber wahrscheinlich ist eine map&lt;&gt; dort für dich geeigneter:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;sstream&gt;
#include &lt;map&gt;
using namespace std;

int main ()
{
    map&lt;int,int&gt; Ergebnisse;
    for (int Ziffer1=0; Ziffer1&lt;10; Ziffer1++)
    {
        for (int Ziffer2=0; Ziffer2&lt;10; Ziffer2++)
        {
            ++Ergebnisse[Ziffer1*Ziffer2];
        }        
    }

    for(map&lt;int,int&gt;::iterator pos=Ergebnisse.begin();pos!=Ergebnisse.end();++pos)
    {
        cout&lt;&lt;pos-&gt;second&lt;&lt;&quot; wurde &quot;&lt;&lt;pos-&gt;first&lt;&lt;&quot; mal erreicht&quot;&lt;&lt;endl;
    }
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2056435</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056435</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 30 Apr 2011 12:23:20 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 12:23:51 GMT]]></title><description><![CDATA[<p>Wenn ich Deinen Code eingebe, sagt er sowas:</p>
<p>main.cpp:38: error: expected <code>;' before 'int' main.cpp:38: error: expected primary-expression before 'int' main.cpp:38: error: 'map' was not declared in this scope main.cpp:43: error: 'Ergebnisse' was not declared in this scope main.cpp:47: error: 'Ergebnisse' was not declared in this scope main.cpp:47: error: expected primary-expression before 'int' main.cpp:47: error: 'pos' was not declared in this scope main.cpp:47: error: expected</code>;' before 'int'</p>
<p>Also, er kennt &quot;map&quot; nicht....<br />
Kannst Du mal eine Seite psten, wo Map, iterator und so erklärt werden</p>
<p>vor allem verstehe ich immer int,int nicht. Ich denke das ist ein Speicher im Speicher...?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056436</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056436</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 12:23:51 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 12:24:05 GMT]]></title><description><![CDATA[<p>sorry, mein Fehler - ich hatte den Header vergessen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056438</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056438</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 30 Apr 2011 12:24:05 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 12:28:06 GMT]]></title><description><![CDATA[<p>Dazu musst du das Ergebnis nach jeder Multiplikation irgendwo speichern, weil es bei jedem Schleifendurchlauf überschrieben/gelöscht wird. Es gibt verschiedene Möglichkeiten das zu machen und eine (simple) davon sind Vektoren (mit Arrays ginge es auch, aber da du theoretisch nicht weißt wir oft welches Ergebnis vorkommen wird, müsste man den Array entweder dynamisch während der Laufzeit anlegen oder Speicher für die maximale Anzahl von möglichen Ergebnissen reservieren). Mit <a href="http://www.cplusplus.com/reference/stl/" rel="nofollow">STL Containern</a> ist es einfacher zu arbeiten.</p>
<p>P.S. Deine Main()-Funktion sollte am Ende 0 oder false zurückgeben, sonst wird das Ganze als fehlerhafte Auführung interpretiert.</p>
<p>Edit: da war jemand schneller</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056440</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056440</guid><dc:creator><![CDATA[*Rewind*]]></dc:creator><pubDate>Sat, 30 Apr 2011 12:28:06 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 12:32:04 GMT]]></title><description><![CDATA[<p>Du hattest - bist Du Pädagoge? - &quot;first&quot; und &quot;second&quot; im cout-Befehl verwechselt. Das war für mich sehr lehrreich..<br />
Danke...</p>
<p>Es geht gleich weiter.... ich muß das erst capieren.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056443</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056443</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 12:32:04 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 12:39:07 GMT]]></title><description><![CDATA[<p>Ich hab einen Numerator eingefügt, am Ende.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt; 
#include &lt;string&gt; 
#include &lt;sstream&gt; 
#include &lt;map&gt;
using namespace std; 
int main () 
{ 
    map&lt;int,int&gt; Ergebnisse; 
    for (int Ziffer1=0; Ziffer1&lt;10; Ziffer1++) 
    { 
        for (int Ziffer2=0; Ziffer2&lt;10; Ziffer2++) 
        { 
            ++Ergebnisse[Ziffer1*Ziffer2]; 
        }         
    } 

    for(map&lt;int,int&gt;::iterator pos=Ergebnisse.begin();pos!=Ergebnisse.end();++pos) 
    { 
	int zl = zl+1;
        cout&lt;&lt;&quot;Nr. &quot;&lt;&lt;zl&lt;&lt;&quot; &quot;&lt;&lt;pos-&gt;first&lt;&lt;&quot; wurde &quot;&lt;&lt;pos-&gt;second&lt;&lt;&quot; mal erreicht&quot;&lt;&lt;endl; 
    } 
}
</code></pre>
<p>[code]</p>
<p>Das erhalte ich:</p>
<blockquote>
<p>[Session started at 2011-04-30 14:35:14 +0200.]<br />
Nr. 14437 0 wurde 19 mal erreicht<br />
Nr. 14438 1 wurde 1 mal erreicht<br />
Nr. 14439 2 wurde 2 mal erreicht<br />
Nr. 14440 3 wurde 2 mal erreicht<br />
Nr. 14441 4 wurde 3 mal erreicht<br />
Nr. 14442 5 wurde 2 mal erreicht<br />
Nr. 14443 6 wurde 4 mal erreicht<br />
Nr. 14444 7 wurde 2 mal erreicht<br />
Nr. 14445 8 wurde 4 mal erreicht<br />
Nr. 14446 9 wurde 3 mal erreicht<br />
Nr. 14447 10 wurde 2 mal erreicht<br />
Nr. 14448 12 wurde 4 mal erreicht<br />
Nr. 14449 14 wurde 2 mal erreicht<br />
Nr. 14450 15 wurde 2 mal erreicht<br />
Nr. 14451 16 wurde 3 mal erreicht<br />
Nr. 14452 18 wurde 4 mal erreicht<br />
Nr. 14453 20 wurde 2 mal erreicht<br />
Nr. 14454 21 wurde 2 mal erreicht<br />
Nr. 14455 24 wurde 4 mal erreicht<br />
Nr. 14456 25 wurde 1 mal erreicht<br />
Nr. 14457 27 wurde 2 mal erreicht<br />
Nr. 14458 28 wurde 2 mal erreicht<br />
Nr. 14459 30 wurde 2 mal erreicht<br />
Nr. 14460 32 wurde 2 mal erreicht<br />
Nr. 14461 35 wurde 2 mal erreicht<br />
Nr. 14462 36 wurde 3 mal erreicht<br />
Nr. 14463 40 wurde 2 mal erreicht<br />
Nr. 14464 42 wurde 2 mal erreicht<br />
Nr. 14465 45 wurde 2 mal erreicht<br />
Nr. 14466 48 wurde 2 mal erreicht<br />
Nr. 14467 49 wurde 1 mal erreicht<br />
Nr. 14468 54 wurde 2 mal erreicht<br />
Nr. 14469 56 wurde 2 mal erreicht<br />
Nr. 14470 63 wurde 2 mal erreicht<br />
Nr. 14471 64 wurde 1 mal erreicht<br />
Nr. 14472 72 wurde 2 mal erreicht<br />
Nr. 14473 81 wurde 1 mal erreicht</p>
</blockquote>
<p>Warum zählt zl so hoch?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056449</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056449</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 12:39:07 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 12:41:52 GMT]]></title><description><![CDATA[<p>Weil die Initialisierung</p>
<pre><code class="language-cpp">int zl = zl+1;
</code></pre>
<p>völlig sinnlos ist.</p>
<p>Initialisiere vor der Schleife &quot;int zl = 0&quot; und in der Schleife erhöhe nur diese Variable mittels &quot;++zl&quot; (bzw. &quot;zl = zl + 1&quot;).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056451</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056451</guid><dc:creator><![CDATA[Th69]]></dc:creator><pubDate>Sat, 30 Apr 2011 12:41:52 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 12:43:10 GMT]]></title><description><![CDATA[<p>Weil du die Variable nicht mit 0 initalisierst.<br />
Initialisiere sie außerhalb von Schleifen mit 0 und inkrementiere sie einfach mit zl++;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056453</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056453</guid><dc:creator><![CDATA[Beaving]]></dc:creator><pubDate>Sat, 30 Apr 2011 12:43:10 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 12:43:51 GMT]]></title><description><![CDATA[<p>Bekell schrieb:</p>
<blockquote>
<p>Du hattest - bist Du Pädagoge? - &quot;first&quot; und &quot;second&quot; im cout-Befehl verwechselt. Das war für mich sehr lehrreich..</p>
</blockquote>
<p>Nein, nur Informatiker <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="😃"
    /> (und mitunter etwas zerstreut :D)</p>
<p>Bekell schrieb:</p>
<blockquote>
<p>Warum zählt zl so hoch?</p>
</blockquote>
<p>Der selbe Fehler, den ich dir schonmal mit dem Nzler angekreidet habe - definiere die Variable vor der Ausgabeschleife (initialisiert mit 0 oder 1) und erhöhe sie in der Schleife nur noch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056455</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056455</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 30 Apr 2011 12:43:51 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 13:12:58 GMT]]></title><description><![CDATA[<p>Ich wollte jetz, daß er noch die einstelligen, die zweistelligen, die dreistelligen -ich hab inzwischen auf dreistellig erhöht, es funktioniert - Ergebnisse absolut und relativ zusammenzählt. Ich würde das mit einer if-Struktur in der letzten for -Schleife machen. Sicher gibt es was eleganteres.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056463</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056463</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 13:12:58 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 13:18:43 GMT]]></title><description><![CDATA[<p>Nachwelchen Kriterien willst du die Ergebnisse zusammenzählen? Wenn du von den Faktoren ausgehen willst, solltest du das direkt beim Erstellen der der Produkt-Liste erledigen, wenn du vom der Stellenzahl der Ergebnisse ausgehst, kannst du das in beiden Schleifen machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056465</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056465</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 30 Apr 2011 13:18:43 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 13:30:22 GMT]]></title><description><![CDATA[<p>Bei dreistelligen Querprodukten, also bis 999 alle durchmultipliziert, gibt es genau 729 Ergebnisse größer als 0, davon nur 100 verschiedene, davon 9 einstellig, 36 zweistellig und 55 dreistellig.</p>
<p>Diese zahle interessieren. Mit If-Schleifen ist zu fehleranfällig.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056471</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056471</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 13:30:22 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 13:36:44 GMT]]></title><description><![CDATA[<p>Die Länge einer Zahl kannst du entweder per if-Auswahl ermitteln oder mit Elementarmathematik: <code>len(x) = ceil(log10(x+1)</code> (bei der Rundung bin ich nicht 100% sicher) - damit kannst du die Anzahlen dann in einem Array oder map&lt;&gt; aufsummieren.</p>
<p>PS: zur <a href="http://www.if-schleife.de" rel="nofollow">www.if-schleife.de</a> sage ich jetzt nichts <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/2056472</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056472</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 30 Apr 2011 13:36:44 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 14:13:57 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;iostream&gt; 
#include &lt;string&gt; 
#include &lt;sstream&gt; 
#include &lt;map&gt;
using namespace std; 
int zl = 0;
int st1 = 0;
int st2 = 0;
int st3 = 0;
int main () 
{ 
    map&lt;int,int&gt; Ergebnisse; 
    for (int Ziffer1=0; Ziffer1&lt;10; Ziffer1++) 
    { 
        for (int Ziffer2=0; Ziffer2&lt;10; Ziffer2++) 
        { 
		 for (int Ziffer3=0; Ziffer3&lt;10; Ziffer3++) 
		{ 
				++Ergebnisse[Ziffer1*Ziffer2*Ziffer3]; 
		}  
	}       
} 

for(map&lt;int,int&gt;::iterator pos=Ergebnisse.begin();pos!=Ergebnisse.end();++pos) 
{ 
	++zl;
        cout&lt;&lt;&quot;Nr. &quot;&lt;&lt;zl&lt;&lt;&quot; Zahl: &quot;&lt;&lt;pos-&gt;first&lt;&lt;&quot; kommt &quot;&lt;&lt;pos-&gt;second&lt;&lt;&quot; mal als QP vor&quot;&lt;&lt;endl; 

	if (first &lt; 10)
	st1=st1+1;
	if (first &gt; 10 &amp;&amp; first &lt; 100)
	st2=st2+1;
	if (first &gt; 100 &amp;&amp; first &lt;1000)
	st3=st3+1;
	}
	cout&lt;&lt;&quot;Innerhalb der Zahlen bis 999 kommen folgende Querprodukte vor&quot;;  
	cout&lt;&lt;&quot;1stellig&quot;&lt;&lt;st1&lt;&lt;&quot;\n&quot;;
	cout&lt;&lt;&quot;2stellig&quot;&lt;&lt;st2&lt;&lt;&quot;\n&quot;;
	cout&lt;&lt;&quot;3stellig&quot;&lt;&lt;st3&lt;&lt;&quot;\n&quot;;
}
</code></pre>
<p>Das hab ich geschrieben, aber irgendwie ist der Effekt verschwunden vom Compiler, daß die Befehle farbig sind, alles ist schwarz-weiss, und auf der Konsole läuft nur noch die alte Version, wenn ich auf Run tippe.....+</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056484</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056484</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 14:13:57 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 14:26:10 GMT]]></title><description><![CDATA[<p>Da sollte dir eigentlich dein Compiler mitteilen, daß die for()-Schleife frei im Raum steht - die sollte schon in der main()-Funktion bleiben. Außerdem wird die 10 (=1*2*5) und 100 (=4*5*5) nicht mitgezählt.</p>
<p>PS: Und &quot;first&quot; als eigenständige Variable existiert auch nicht - die if-Kaskade sollte eher so aussehen:</p>
<pre><code class="language-cpp">if(pos-&gt;first &lt; 10)
  st1+=pos-&gt;second;
else if(pos-&gt;first &lt; 100)
  st2+=pos-&gt;second;
else
  st3+=pos-&gt;second;
</code></pre>
<p>Oder die Variante mit STL-Algorithmen:</p>
<pre><code class="language-cpp">int stlimits[] = {0,10,100,1000};
int stellen[5];
for( map&lt;int,int&gt;::iterator pos=Ergebnisse.begin(); pos!=Ergebnisse.end(); ++pos)
{
  cout&lt;&lt;...
  int st = lower_bound(stlimits,stlimits+4,pos-&gt;first);
  stellen[st] += pos-&gt;second;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2056487</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056487</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 30 Apr 2011 14:26:10 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 14:30:19 GMT]]></title><description><![CDATA[<p>Erst mal ist das das Problem:</p>
<p><strong>irgendwie ist der Effekt verschwunden vom Compiler, daß die Befehle farbig sind, alles ist schwarz-weiss, und auf der Konsole läuft nur noch die alte Version, wenn ich auf Run tippe.....</strong></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056489</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056489</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 14:30:19 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 14:36:11 GMT]]></title><description><![CDATA[<p>Bekell schrieb:</p>
<blockquote>
<p><strong>irgendwie ist der Effekt verschwunden vom Compiler, daß die Befehle farbig sind, alles ist schwarz-weiss, und auf der Konsole läuft nur noch die alte Version, wenn ich auf Run tippe.....</strong></p>
</blockquote>
<p>Hast du mal &quot;Rebuild all&quot; ausprobiert? Wenn ich raten müsste, würde ich sagen, daß der Compiler durch die global stehende for()-Schleife ein wenig aus dem Konzept geraten ist.</p>
<p>(über konkrete Fragen zu deiner IDE kann ich leider nichts sagen)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056492</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056492</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 30 Apr 2011 14:36:11 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 14:40:19 GMT]]></title><description><![CDATA[<p>Ich mach mit X-code, bei einer fehlenden Klammer von for würd er das bei error anzeigen. Das Error-Fenster bleibt aber leer, und alle die farbigen Befehle sind auch weg......</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056494</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056494</guid><dc:creator><![CDATA[Bekell]]></dc:creator><pubDate>Sat, 30 Apr 2011 14:40:19 GMT</pubDate></item><item><title><![CDATA[Reply to Einfaches Tool voller Fehler on Sat, 30 Apr 2011 14:53:40 GMT]]></title><description><![CDATA[<p>OK, ich korrgiere mich, die Schleife steht doch nicht global - deine Einrückung ist nur katastrophal.</p>
<p>Aber die Fehlermeldung von <a href="http://ideone.com/JqHQ6" rel="nofollow">Ideone</a> dürfte das Problem umschreiben:</p>
<blockquote>
<p>prog.cpp: In function ‘int main()’:<br />
prog.cpp:29: error: ‘first’ was not declared in this scope<br />
prog.cpp:31: error: ‘first’ was not declared in this scope<br />
prog.cpp:33: error: ‘first’ was not declared in this scope</p>
</blockquote>
<p>-&gt; Das heißt im Klartext: Die Variable heißt nicht &quot;first&quot;, sondern &quot;pos-&gt;first&quot;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2056499</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2056499</guid><dc:creator><![CDATA[CStoll]]></dc:creator><pubDate>Sat, 30 Apr 2011 14:53:40 GMT</pubDate></item></channel></rss>