<?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[Zwei gleiche Wörter]]></title><description><![CDATA[<p>Schreibe ein Programm das string einliest und die ausgibt, wenn es aber ein &quot;quit&quot; eingegeben wird dann soll sich das Programm beenden. Das funktioniert alles gut, nun will ich dass wenn man zweimal &quot;quit&quot; eingibt dann soll sich das Programm beenden. Und genau hier komm ich nicht weiter. Soviel wurde gemacht.</p>
<pre><code class="language-cpp">void print_until_s(vector &lt;string&gt; &amp;v, const string quit, string name)
{
	cout &lt;&lt; &quot;Please write a string! To Exit write \&quot;quit\&quot;! &quot; &lt;&lt; endl;
	while (cin &gt;&gt; name){ 
	v.push_back(name);

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

	for(int i = 0;i&lt;v.size();++i){
		if(v[i] == quit &amp;&amp; name == quit){ 
		cout &lt;&lt; &quot;Exit &quot; &lt;&lt; endl;
		return;}
		if(v[i] != quit &amp;&amp; name != quit){
		cout &lt;&lt; v[i] &lt;&lt; endl;}
	}
  }
}

int main()
try{
    vector &lt;string&gt; v;
    const string quit = &quot;quit&quot;;
    string name;

    print_until_s(v,quit,name);

    keep_window_open();
    return 0;
}
catch (runtime_error e) {	
	cout &lt;&lt; e.what() &lt;&lt; '\n';
	keep_window_open(&quot;~&quot;);	
}
catch (...) {	
	cout &lt;&lt; &quot;exiting\n&quot;;
	keep_window_open(&quot;~&quot;);	
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/279823/zwei-gleiche-wörter</link><generator>RSS for Node</generator><lastBuildDate>Mon, 24 Aug 2026 10:09:43 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/279823.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 04 Jan 2011 14:06:13 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Zwei gleiche Wörter on Tue, 04 Jan 2011 14:06:13 GMT]]></title><description><![CDATA[<p>Schreibe ein Programm das string einliest und die ausgibt, wenn es aber ein &quot;quit&quot; eingegeben wird dann soll sich das Programm beenden. Das funktioniert alles gut, nun will ich dass wenn man zweimal &quot;quit&quot; eingibt dann soll sich das Programm beenden. Und genau hier komm ich nicht weiter. Soviel wurde gemacht.</p>
<pre><code class="language-cpp">void print_until_s(vector &lt;string&gt; &amp;v, const string quit, string name)
{
	cout &lt;&lt; &quot;Please write a string! To Exit write \&quot;quit\&quot;! &quot; &lt;&lt; endl;
	while (cin &gt;&gt; name){ 
	v.push_back(name);

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

	for(int i = 0;i&lt;v.size();++i){
		if(v[i] == quit &amp;&amp; name == quit){ 
		cout &lt;&lt; &quot;Exit &quot; &lt;&lt; endl;
		return;}
		if(v[i] != quit &amp;&amp; name != quit){
		cout &lt;&lt; v[i] &lt;&lt; endl;}
	}
  }
}

int main()
try{
    vector &lt;string&gt; v;
    const string quit = &quot;quit&quot;;
    string name;

    print_until_s(v,quit,name);

    keep_window_open();
    return 0;
}
catch (runtime_error e) {	
	cout &lt;&lt; e.what() &lt;&lt; '\n';
	keep_window_open(&quot;~&quot;);	
}
catch (...) {	
	cout &lt;&lt; &quot;exiting\n&quot;;
	keep_window_open(&quot;~&quot;);	
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2002251</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2002251</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Tue, 04 Jan 2011 14:06:13 GMT</pubDate></item><item><title><![CDATA[Reply to Zwei gleiche Wörter on Tue, 04 Jan 2011 14:16:25 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;string&gt;

using namespace std;

int main(int argc, char *argv[]) 
{ 
	const string c = &quot;quit&quot;;

	string a;
	string b;

	do
	{
		cin &gt;&gt; a;
		cin &gt;&gt; b;
	}while(b != c &amp;&amp; a != c);

    return 0; 
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2002254</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2002254</guid><dc:creator><![CDATA[umständlich?]]></dc:creator><pubDate>Tue, 04 Jan 2011 14:16:25 GMT</pubDate></item><item><title><![CDATA[Reply to Zwei gleiche Wörter on Tue, 04 Jan 2011 14:34:02 GMT]]></title><description><![CDATA[<p>Also ich würde mich als Benutzer ärgern, wenn ich immer zwei mal quit eingeben müsste. Diese 4 Buchstaben und ein abschließendes Return zeigen doch recht eindeutig, was ich möchte. Einen Irrtum kann man da quasi ausschließen.</p>
<p>P.S.: Du solltest vielleicht Fälle wie &quot;Quit&quot; oder &quot;QUIT&quot; beachten (also am besten vor dem Vergleich den String 'lowern' und dann mit &quot;quit&quot; vergleichen).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2002263</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2002263</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Tue, 04 Jan 2011 14:34:02 GMT</pubDate></item><item><title><![CDATA[Reply to Zwei gleiche Wörter on Tue, 04 Jan 2011 14:44:42 GMT]]></title><description><![CDATA[<p>Mit string ist es einfacher</p>
<pre><code>string eingabe;
cin &gt;&gt; eingabe;
if(eingabe.find(&quot;quit&quot;))
{
    cout &lt;&lt; &quot;Wirklich beenden(quit)?&quot; &lt;&lt; endl;
    cin &gt;&gt; eingabe;
    if(eingabe.find(&quot;quit&quot;))
    {
        return 0;
    }
}
else
{
    cout &lt;&lt; &quot;Falsche eingabe&quot; &lt;&lt; endl;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2002265</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2002265</guid><dc:creator><![CDATA[Conflict]]></dc:creator><pubDate>Tue, 04 Jan 2011 14:44:42 GMT</pubDate></item><item><title><![CDATA[Reply to Zwei gleiche Wörter on Tue, 04 Jan 2011 14:45:56 GMT]]></title><description><![CDATA[<p>Das ist die Lösung:</p>
<pre><code class="language-cpp">void print_until_s(vector &lt;string&gt; &amp;v, const string quit, string name, string name2)
{
	cout &lt;&lt; &quot;Please write a string! To Exit write \&quot;quit\&quot;! &quot; &lt;&lt; endl;
	while (cin &gt;&gt; name &gt;&gt; name2){ 
	v.push_back(name);
    v.push_back(name2);

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

	for(int i = 0;i&lt;v.size();++i){
		if(v[i] == quit &amp;&amp; name == quit &amp;&amp; name2 == quit){ 
		cout &lt;&lt; &quot;Exit &quot; &lt;&lt; endl;
		return;}
		if(v[i] != quit &amp;&amp; name != quit &amp;&amp; name2 != quit){
			cout &lt;&lt; v[i] &lt;&lt; endl;}
		if(v[i] != quit &amp;&amp; name != quit &amp;&amp; name2 == quit){
			cout &lt;&lt; v[i] &lt;&lt; endl;}
		if(v[i] == quit &amp;&amp; name == quit &amp;&amp; name2 != quit){
			cout &lt;&lt; v[i] &lt;&lt; endl;}
	}
  }
}

int main()
try{
    vector &lt;string&gt; v;
    const string quit = &quot;quit&quot;;
    string name;
    string name2;

    print_until_s(v,quit,name,name2);

    keep_window_open();
    return 0;
}
catch (runtime_error e) {	
	cout &lt;&lt; e.what() &lt;&lt; '\n';
	keep_window_open(&quot;~&quot;);	
}
catch (...) {	
	cout &lt;&lt; &quot;exiting\n&quot;;
	keep_window_open(&quot;~&quot;);	
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2002271</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2002271</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Tue, 04 Jan 2011 14:45:56 GMT</pubDate></item><item><title><![CDATA[Reply to Zwei gleiche Wörter on Tue, 04 Jan 2011 14:49:02 GMT]]></title><description><![CDATA[<p>Gratulation für diese Lösung... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /> Es schaudert mir.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2002274</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2002274</guid><dc:creator><![CDATA[HighLigerBiMBam]]></dc:creator><pubDate>Tue, 04 Jan 2011 14:49:02 GMT</pubDate></item><item><title><![CDATA[Reply to Zwei gleiche Wörter on Tue, 04 Jan 2011 15:07:50 GMT]]></title><description><![CDATA[<p>Es soll die string in einen vector Container werfen. Und wenn es im vector zweimal quit findet dann soll sich das Programm beenden. Das habe ich vergesse zu schreiben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2002286</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2002286</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Tue, 04 Jan 2011 15:07:50 GMT</pubDate></item><item><title><![CDATA[Reply to Zwei gleiche Wörter on Tue, 04 Jan 2011 15:24:08 GMT]]></title><description><![CDATA[<p>Dann doch bitte lieber sowas:</p>
<pre><code class="language-cpp">const string quit = &quot;quit&quot;;

void print_until_s(vector &lt;string&gt; &amp;v) 
{ 
	cout &lt;&lt; &quot;Please write a string! To Exit write \&quot;quit\&quot;! &quot; &lt;&lt; endl; 

	int quitcount = 0;
	do
	{
		string name;
		cin &gt;&gt; name

		if(name == quit)
			++quitcount;
        else
        {
            v.push_back(name);
            quitcount = 0;
        }
	}while(quitcount &lt; 2);

	sort(v.begin(),v.end()); 
}
</code></pre>
<p>Edit: Mach dir doch mal Gedanken, was die funktion machen, soll: Warum musst du jedesmal den Vector durchlaufen? Warum muss er permanent sinnlos sortiert werden? Kann man das nicht einfach lösen? Warum müssen Strings als Parameter übergeben werden, die keinen Wert enthalten? Warum muss eine Konstante übergeben werden?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2002292</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2002292</guid><dc:creator><![CDATA[HighLigerBiMBam]]></dc:creator><pubDate>Tue, 04 Jan 2011 15:24:08 GMT</pubDate></item><item><title><![CDATA[Reply to Zwei gleiche Wörter on Tue, 04 Jan 2011 15:32:26 GMT]]></title><description><![CDATA[<p>Ganz einfach das ist eine Übung, und darum muss ich das so machen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2002305</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2002305</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Tue, 04 Jan 2011 15:32:26 GMT</pubDate></item><item><title><![CDATA[Reply to Zwei gleiche Wörter on Tue, 04 Jan 2011 15:36:39 GMT]]></title><description><![CDATA[<p>Das Programm funktioniert jetzt, danke an alle für die Hilfe.</p>
<pre><code class="language-cpp">void print_until_s(vector &lt;string&gt; &amp;v, const string quit, string name)
{
	 cout &lt;&lt; &quot;Please write a string! To Exit write \&quot;quit\&quot;! &quot; &lt;&lt; endl; 

    int quitcount = 0; 
    do 
    {  
        cin &gt;&gt; name; 

        if(name == quit) 
            ++quitcount; 
        else 
        { 
            v.push_back(name); 
            quitcount = 0; 
        } 
    }while(quitcount &lt; 2); 

    sort(v.begin(),v.end());
    for(int i = 0;i&lt;v.size();++i){
	cout &lt;&lt; v[i] &lt;&lt; endl;}
}

int main()
try{
    vector &lt;string&gt; v; 
    const string quit = &quot;quit&quot;; 
    string name; 

    print_until_s(v,quit,name); 

    keep_window_open();
    return 0;
}
catch (runtime_error e) {    
    cout &lt;&lt; e.what() &lt;&lt; '\n'; 
    keep_window_open(&quot;~&quot;);    
} 
catch (...) {    
    cout &lt;&lt; &quot;exiting\n&quot;; 
    keep_window_open(&quot;~&quot;);    
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2002307</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2002307</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Tue, 04 Jan 2011 15:36:39 GMT</pubDate></item></channel></rss>