<?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[Unklarheit (Anfänger)]]></title><description><![CDATA[<p>Morgen, <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>
<p>Ich habe ein Programm geschrieben, welches mehrere Wörter/Strings einliest und diese anschließend sortiert wieder ausgibt. Wörter, die doppelt eingelesen wurden, werden nur einmal ausgegeben. Und da kommen wir schon zu meinem Problem:</p>
<p>Mir ist nicht klar, wie das Programm alle zuvor ausgegeben Wörter mit dem nun auszugebenen Wort vergleicht und bei einer vorhandenen Wortwiederholung nicht ausgibt. Eigentlich müsste es, meiner Logik nach, immer nur das letzte ausgegebene Wort mit dem gerade ausgegebenem Wort vergleichen und nicht mit allen schon ausgegebenen Wörtern vergleichen!<br />
Wie dies zu stande kommt, müsste mir erklärt werden, Danke:) - Zeile 22, for-Anweisung</p>
<p>#include &quot;stdafx.h&quot;<br />
#include &lt;iostream&gt;<br />
#include &lt;string&gt;<br />
#include &lt;vector&gt;<br />
#include &lt;cmath&gt;<br />
#include &lt;algorithm&gt;<br />
#include &lt;conio.h&gt;</p>
<p>using namespace std;<br />
int main()</p>
<p>{<br />
vector &lt;string&gt; words;<br />
string word;</p>
<p>while (cin &gt;&gt; word)<br />
words.push_back(word);<br />
cout &lt;&lt; &quot; Anzahl der Woerter:&quot; &lt;&lt; words.size() &lt;&lt; endl;</p>
<p>sort(words.begin(),words.end());</p>
<p>for (int i = 0; i &lt; words.size(); ++i)<br />
if ( words[i] != &quot;Brokkoli&quot; )<br />
if ( i==0 || words[i-1]!=words[i] ) // Warum werden hier alle Werte aus words überprüft?<br />
cout &lt;&lt; words[i] &lt;&lt;&quot;\n&quot;;<br />
_getch();<br />
return 0;<br />
}</p>
<p>Vielen Dank schon einmal, falls sich jemand die Mühe macht mein schlecht geschildertes Problem zu verstehen und mir auch zu erklären.</p>
<p>Wer es schaft kriegt ein: <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> oder sogar <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/306325/unklarheit-anfänger</link><generator>RSS for Node</generator><lastBuildDate>Sat, 08 Aug 2026 07:36:48 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/306325.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 25 Jul 2012 05:16:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Unklarheit (Anfänger) on Wed, 25 Jul 2012 05:16:02 GMT]]></title><description><![CDATA[<p>Morgen, <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>
<p>Ich habe ein Programm geschrieben, welches mehrere Wörter/Strings einliest und diese anschließend sortiert wieder ausgibt. Wörter, die doppelt eingelesen wurden, werden nur einmal ausgegeben. Und da kommen wir schon zu meinem Problem:</p>
<p>Mir ist nicht klar, wie das Programm alle zuvor ausgegeben Wörter mit dem nun auszugebenen Wort vergleicht und bei einer vorhandenen Wortwiederholung nicht ausgibt. Eigentlich müsste es, meiner Logik nach, immer nur das letzte ausgegebene Wort mit dem gerade ausgegebenem Wort vergleichen und nicht mit allen schon ausgegebenen Wörtern vergleichen!<br />
Wie dies zu stande kommt, müsste mir erklärt werden, Danke:) - Zeile 22, for-Anweisung</p>
<p>#include &quot;stdafx.h&quot;<br />
#include &lt;iostream&gt;<br />
#include &lt;string&gt;<br />
#include &lt;vector&gt;<br />
#include &lt;cmath&gt;<br />
#include &lt;algorithm&gt;<br />
#include &lt;conio.h&gt;</p>
<p>using namespace std;<br />
int main()</p>
<p>{<br />
vector &lt;string&gt; words;<br />
string word;</p>
<p>while (cin &gt;&gt; word)<br />
words.push_back(word);<br />
cout &lt;&lt; &quot; Anzahl der Woerter:&quot; &lt;&lt; words.size() &lt;&lt; endl;</p>
<p>sort(words.begin(),words.end());</p>
<p>for (int i = 0; i &lt; words.size(); ++i)<br />
if ( words[i] != &quot;Brokkoli&quot; )<br />
if ( i==0 || words[i-1]!=words[i] ) // Warum werden hier alle Werte aus words überprüft?<br />
cout &lt;&lt; words[i] &lt;&lt;&quot;\n&quot;;<br />
_getch();<br />
return 0;<br />
}</p>
<p>Vielen Dank schon einmal, falls sich jemand die Mühe macht mein schlecht geschildertes Problem zu verstehen und mir auch zu erklären.</p>
<p>Wer es schaft kriegt ein: <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> oder sogar <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2235435</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2235435</guid><dc:creator><![CDATA[campelino]]></dc:creator><pubDate>Wed, 25 Jul 2012 05:16:02 GMT</pubDate></item><item><title><![CDATA[Reply to Unklarheit (Anfänger) on Wed, 25 Jul 2012 05:33:50 GMT]]></title><description><![CDATA[<p>In Version Leserlich 2.0:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &lt;algorithm&gt;

#include &lt;conio.h&gt;

using namespace std;

int main()
{
	vector &lt;string&gt; words;
	string word;

	while( cin &gt;&gt; word ) {

		words.push_back( word );
	}

	cout &lt;&lt; &quot;Anzahl der Woerter:&quot; &lt;&lt; words.size() &lt;&lt; endl;

	sort( words.begin(), words.end() );

	for( int i = 0; i &lt; words.size(); ++i ) {

		if ( words[ i ] != &quot;Brokkoli&quot; ) {

			if ( i==0 || words[ i - 1 ] != words[ i ] )
				cout &lt;&lt; words[i] &lt;&lt;&quot;\n&quot;;
		}
	}

	_getch();
}
</code></pre>
<p>campelino schrieb:</p>
<blockquote>
<p>Eigentlich müsste es, meiner Logik nach, immer nur das letzte ausgegebene Wort mit dem gerade ausgegebenem Wort vergleichen und nicht mit allen schon ausgegebenen Wörtern vergleichen!</p>
</blockquote>
<p>Der Code prüft vor der Ausgabe eh nur das aktuelle Wort <code>i</code> gegen Wort <code>i - 1</code> , und ned alle!?</p>
<p>// edit: Tagsoup...<br />
// edihit: Gaaaah! <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f621.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--pouting_face"
      title=":rage:"
      alt="😡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2235439</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2235439</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Wed, 25 Jul 2012 05:33:50 GMT</pubDate></item><item><title><![CDATA[Reply to Unklarheit (Anfänger) on Wed, 25 Jul 2012 05:36:19 GMT]]></title><description><![CDATA[<p>campelino schrieb:</p>
<blockquote>
<pre><code class="language-cpp">while (cin &gt;&gt; word)
    words.push_back(word);
</code></pre>
</blockquote>
<p>Wie kommst du aus der Schleife wieder heraus?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2235440</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2235440</guid><dc:creator><![CDATA[out]]></dc:creator><pubDate>Wed, 25 Jul 2012 05:36:19 GMT</pubDate></item><item><title><![CDATA[Reply to Unklarheit (Anfänger) on Wed, 25 Jul 2012 05:43:40 GMT]]></title><description><![CDATA[<p>Indem er <code>EOF</code> eingibt. In <code>cmd.exe</code> ist es <code>^Z</code> .</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2235442</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2235442</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Wed, 25 Jul 2012 05:43:40 GMT</pubDate></item><item><title><![CDATA[Reply to Unklarheit (Anfänger) on Wed, 25 Jul 2012 05:47:56 GMT]]></title><description><![CDATA[<p>// edit: quatsch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2235443</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2235443</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Wed, 25 Jul 2012 05:47:56 GMT</pubDate></item><item><title><![CDATA[Reply to Unklarheit (Anfänger) on Wed, 25 Jul 2012 06:12:14 GMT]]></title><description><![CDATA[<p>campelino schrieb:</p>
<blockquote>
<p>Eigentlich müsste es, meiner Logik nach, immer nur das letzte ausgegebene Wort mit dem gerade ausgegebenem Wort vergleichen</p>
</blockquote>
<p>Ja, und da die Wörter sortiert sind, genügt das auch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2235447</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2235447</guid><dc:creator><![CDATA[Belli]]></dc:creator><pubDate>Wed, 25 Jul 2012 06:12:14 GMT</pubDate></item><item><title><![CDATA[Reply to Unklarheit (Anfänger) on Wed, 25 Jul 2012 09:57:36 GMT]]></title><description><![CDATA[<p>Belli schrieb:</p>
<blockquote>
<p>campelino schrieb:</p>
<blockquote>
<p>Eigentlich müsste es, meiner Logik nach, immer nur das letzte ausgegebene Wort mit dem gerade ausgegebenem Wort vergleichen</p>
</blockquote>
<p>Ja, und da die Wörter sortiert sind, genügt das auch.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2235497</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2235497</guid><dc:creator><![CDATA[campelino]]></dc:creator><pubDate>Wed, 25 Jul 2012 09:57:36 GMT</pubDate></item></channel></rss>