<?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[Summe zweier vector Container]]></title><description><![CDATA[<p>Ich schreibe ein Programm das eine Funktion, die unter Verwendung zweier gegebener vector&lt;double&gt;-Container namens price und weigth einen Wert berechnet, der die Summe alles price[i]*weight[i] darstellt. Aber ich beachte dass weight.size()&lt;=price.size() gelten muss. Doch es funktioniert nicht so wie es sein sollte.</p>
<pre><code class="language-cpp">void calc(vector &lt;double&gt;&amp; price,vector &lt;double&gt;&amp; weight){
	double val;
	val = price[0] * weight[0];
    cout &lt;&lt; val &lt;&lt; endl;
	val = price[1] * weight[1];
	cout &lt;&lt; val &lt;&lt; endl;
	val = price[2] * weight[2];
	cout &lt;&lt; val &lt;&lt; endl;
	val = price [3] * weight[3];
	cout &lt;&lt; val &lt;&lt; endl;

	for (int i = 0;weight.size() &lt;= price.size(); ++i) val = i;
	cout &lt;&lt; val &lt;&lt; endl; 
}

int main()
{
    vector &lt;double&gt; price;
	vector &lt;double&gt; weight;

    price.push_back(45.56);
	price.push_back(4.5);
	price.push_back(66.89);
    price.push_back(0.4555);

	weight.push_back(32.89);
	weight.push_back(2.2);
	weight.push_back(99.45);
	weight.push_back(56.6);

	calc(price,weight);

	keep_window_open();
    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/279615/summe-zweier-vector-container</link><generator>RSS for Node</generator><lastBuildDate>Mon, 24 Aug 2026 12:17:46 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/279615.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 30 Dec 2010 15:52:37 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 15:52:37 GMT]]></title><description><![CDATA[<p>Ich schreibe ein Programm das eine Funktion, die unter Verwendung zweier gegebener vector&lt;double&gt;-Container namens price und weigth einen Wert berechnet, der die Summe alles price[i]*weight[i] darstellt. Aber ich beachte dass weight.size()&lt;=price.size() gelten muss. Doch es funktioniert nicht so wie es sein sollte.</p>
<pre><code class="language-cpp">void calc(vector &lt;double&gt;&amp; price,vector &lt;double&gt;&amp; weight){
	double val;
	val = price[0] * weight[0];
    cout &lt;&lt; val &lt;&lt; endl;
	val = price[1] * weight[1];
	cout &lt;&lt; val &lt;&lt; endl;
	val = price[2] * weight[2];
	cout &lt;&lt; val &lt;&lt; endl;
	val = price [3] * weight[3];
	cout &lt;&lt; val &lt;&lt; endl;

	for (int i = 0;weight.size() &lt;= price.size(); ++i) val = i;
	cout &lt;&lt; val &lt;&lt; endl; 
}

int main()
{
    vector &lt;double&gt; price;
	vector &lt;double&gt; weight;

    price.push_back(45.56);
	price.push_back(4.5);
	price.push_back(66.89);
    price.push_back(0.4555);

	weight.push_back(32.89);
	weight.push_back(2.2);
	weight.push_back(99.45);
	weight.push_back(56.6);

	calc(price,weight);

	keep_window_open();
    return 0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2000392</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000392</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 15:52:37 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 16:00:53 GMT]]></title><description><![CDATA[<p>Suchst du vielleicht das: <a href="http://www.cplusplus.com/reference/std/numeric/inner_product/" rel="nofollow">http://www.cplusplus.com/reference/std/numeric/inner_product/</a> ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000396</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000396</guid><dc:creator><![CDATA[dot]]></dc:creator><pubDate>Thu, 30 Dec 2010 16:00:53 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 16:07:22 GMT]]></title><description><![CDATA[<p>Nein, sondern wenn ich es richtig verstehen es soll einen Wert errechnen aus price und weigth nur das weight.size()&lt;=price.size() gelten muss.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000401</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000401</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 16:07:22 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 16:10:06 GMT]]></title><description><![CDATA[<p>winux schrieb:</p>
<blockquote>
<p>Nein, sondern wenn ich es richtig verstehen es soll einen Wert errechnen aus price und weigth nur das weight.size()&lt;=price.size() gelten muss.</p>
</blockquote>
<p>Und was genau soll das bedeuten?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000402</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000402</guid><dc:creator><![CDATA[dot]]></dc:creator><pubDate>Thu, 30 Dec 2010 16:10:06 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 16:14:00 GMT]]></title><description><![CDATA[<p>Wenn ich das auch wüste das wäre gut, das ist eine Übung. Und das ist nur so viel bekannt was ich schon geschrieben habe mehr nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000405</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000405</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 16:14:00 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 16:20:55 GMT]]></title><description><![CDATA[<p>Eine Lösung habe ich schon doch es Funktioniert nicht.</p>
<pre><code class="language-cpp">if (weight.size() &lt;= price.size()){ 
		val = price[] * weight[] ;
		cout &lt;&lt; val &lt;&lt; endl;}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2000408</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000408</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 16:20:55 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 16:24:49 GMT]]></title><description><![CDATA[<p>Du schriebst du sollst die Summe aller Produkte der korrespondierenden Elemente in den beiden Containern berechnen. Das setzt erstens mal voraus dass weight.size() == price.size() ist und entspricht zweitens genau dem was die von mir verlinkte Funktion tut. Ich vermute mal dass du es selber machen sollst, in dem Fall einfach eine Schleife machen die über alle Elemente läuft und ihre Produkte aufsummiert. Wenn du dabei ein konkretes Problem hast musst du auch eine konkrete Frage stellen damit dir jemand eine konkrete Antwort geben kann.</p>
<pre><code class="language-cpp">for (int i = 0;weight.size() &lt;= price.size(); ++i) val = i;
</code></pre>
<p>Das ist jedenfalls Blödsinn. Ich würde stark empfehlen dass du dir nochmal anschaust was genau eine for Schleife tut.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000409</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000409</guid><dc:creator><![CDATA[dot]]></dc:creator><pubDate>Thu, 30 Dec 2010 16:24:49 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 16:31:03 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">val = price[] * weight[];
</code></pre>
<p>Mir ist klar was du damit beabsichtigst aber du kannst nicht einfach zwei Arrays miteinander multiplizieren. Du kannst nur zwei Elemente der beiden Arrays explizit ansprechen und diese dann multiplizieren, also z.B. sowas machen:</p>
<pre><code class="language-cpp">double product = price[1] * weight[1];
</code></pre>
<p>das multipliziert das zweite Element aus price mit dem zweiten Element aus weight.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000413</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000413</guid><dc:creator><![CDATA[dot]]></dc:creator><pubDate>Thu, 30 Dec 2010 16:31:03 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 16:58:34 GMT]]></title><description><![CDATA[<p>Denke das ist die Lösung:</p>
<pre><code class="language-cpp">if (weight.size() &lt;= price.size()){ 
		val = price.size() * weight.size();
		cout &lt;&lt; val &lt;&lt; endl;}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2000427</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000427</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 16:58:34 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 17:13:48 GMT]]></title><description><![CDATA[<p>Funktioniert es denn?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000431</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000431</guid><dc:creator><![CDATA[dot]]></dc:creator><pubDate>Thu, 30 Dec 2010 17:13:48 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 17:16:31 GMT]]></title><description><![CDATA[<p>Ja es Funktioniert. Danke für deine Hilfe.</p>
<pre><code class="language-cpp">void calc(const vector &lt;double&gt;&amp; price,const vector &lt;double&gt;&amp; weight){ 
	double val;
	val = price[0] * weight[0];
    cout &lt;&lt; val &lt;&lt; endl;
	val = price[1] * weight[1];
	cout &lt;&lt; val &lt;&lt; endl;
	val = price[2] * weight[2];
	cout &lt;&lt; val &lt;&lt; endl;
	val = price [3] * weight[3];
	cout &lt;&lt; val &lt;&lt; endl;
	cout &lt;&lt; &quot; &quot; &lt;&lt; endl;
	if (weight.size() &lt;= price.size()){   // For the calculation
		val = price.size() * weight.size();
		cout &lt;&lt; val &lt;&lt; endl;}
	cout &lt;&lt; &quot; &quot; &lt;&lt; endl;
    if (weight[0] &lt;= price[0]){
		val = price[0] * weight[0];
		cout &lt;&lt; val &lt;&lt; endl;}
	if (weight[1] &lt;= price[1]){
		val = price[1] * weight[1];
		cout &lt;&lt; val &lt;&lt; endl;}
	if (weight[2] &lt;= price[2]){
		val = price[2] * weight[2];
		cout &lt;&lt; val &lt;&lt; endl;}
	if (weight[3] &lt;= price[3]){
		val = price[3] * weight[3];
		cout &lt;&lt; val &lt;&lt; endl;}
}

int main()
try{
    vector &lt;double&gt; price;
	vector &lt;double&gt; weight;

    price.push_back(45.56);
	price.push_back(4.5);
	price.push_back(66.89);
    price.push_back(0.4555);

	weight.push_back(32.89);
	weight.push_back(2.2);
	weight.push_back(99.45);
	weight.push_back(56.6);

	calc(price,weight);

	keep_window_open();
    return 0;
}
catch (runtime_error e) {	
	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/2000434</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000434</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 17:16:31 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 17:21:26 GMT]]></title><description><![CDATA[<p>Oh, wenn das die Lösung ist hab ich offenbar deine Aufgabenstellung falsch verstanden. Ich dachte das soll nicht nur mit genau vier und nur vier Elementen gehen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000438</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000438</guid><dc:creator><![CDATA[dot]]></dc:creator><pubDate>Thu, 30 Dec 2010 17:21:26 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 17:26:36 GMT]]></title><description><![CDATA[<p>Dein Problem ist offensichtlich nicht die Programmiersprache sondern die Aufgabe ansich.<br />
kleiner Tipp: schreib dir mal ruhig kleinschrittig in Prosa auf (oder als Stichpunktliste) <em>was</em> dein Programm <em>in welcher Reihenfolge</em> tun soll. Dann versuchst du erst im nächsten Schritt daraus einen Programmcode zu machen, indem du dich genau an deine Stichpunkte hälst.</p>
<p>Wenn du das nächste mal Programmcode postest, solltest du deine Stichpunktliste ebenso mit abtippen, damit wir dir das korrigieren können.</p>
<p>//edit deine zuletzt genannte Lösung ist Schrott. In deiner Aufgabe steht explizit &quot;die Summe&quot;. Dein Programm enthält aber nicht ein einziges &quot;+&quot;.</p>
<p>Auch beachtest du nicht die von dir genannte Restriktion. Stell dir vor, price hat nur 3 Elemente. Was passiert, wenn du dann price[3] aufrufst? Und was machst du, wnen beide Vektoren 10 Elemente haben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000439</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000439</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Thu, 30 Dec 2010 17:26:36 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 17:30:59 GMT]]></title><description><![CDATA[<p>Ja so ist es, ich verstehe die Aufgaben nicht immer. Eine bessere Deutsch Kenntnisse würde nicht schaden. Aber wenn ich eine Aufgabe nicht verstehe kann ich dann den ganzen Text auch hier reinschreiben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000444</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000444</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 17:30:59 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 17:35:17 GMT]]></title><description><![CDATA[<p>Also die Übung ist in Buch Einführung in die Programmierung mit C++. Und der Text ist folgendes:<br />
Schreiben Sie eine Funktion, die unter Verwendung zweier gegebener vector &lt;double&gt; -Container names price und weight einen Wert (einen „Index“) berechnet, der die Summe aller price[i]*weight[i] darstellt. Beachten Sie, dass weight.size()&lt;=price.size() gelten muss.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000445</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000445</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 17:35:17 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 18:00:36 GMT]]></title><description><![CDATA[<p>Eine mögliche Lösung (wobei ich davon ausgehe, dass beide Vektoren gleich gross sind):</p>
<pre><code class="language-cpp">#include &lt;numeric&gt;
#include &lt;vector&gt;

double sumOfProducts (std::vector&lt;double&gt;&amp; weight, std::vector&lt;double&gt;&amp; price) {
	if (weight.size()==price.size())
		return std::inner_product(weight.begin(),weight.end(),price.begin(),0.0);
	throw std::runtime_error(&quot;vector sizes mismatch&quot;);
}
// ... snipsnap
</code></pre>
<p>Eine andere Möglichkeit wäre:</p>
<pre><code class="language-cpp">double sumOfProducts2 (std::vector&lt;double&gt;&amp; weight, std::vector&lt;double&gt;&amp; price) {
	if (weight.size()&lt;=price.size()) {
		double sum = 0.0;
		for (int i = 0; i!= weight.size(); ++i) 
			sum += weight[i]*price[i];
		return sum;
	}
	throw std::runtime_error(&quot;weight-vector is greater than price-vector&quot;);
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2000451</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000451</guid><dc:creator><![CDATA[inter2k3]]></dc:creator><pubDate>Thu, 30 Dec 2010 18:00:36 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 18:29:59 GMT]]></title><description><![CDATA[<p>Danke für deine Hilfe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000461</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000461</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 18:29:59 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 19:10:43 GMT]]></title><description><![CDATA[<p>Was ist mit das hier gemeint:</p>
<pre><code class="language-cpp">for (int i = 0; i!= weight.size(); ++i)
</code></pre>
<p>Wenn das nicht gleich ist dann wird nichts gemacht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000484</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000484</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 19:10:43 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 19:15:18 GMT]]></title><description><![CDATA[<p>*Seufz*</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/24492">@inter2k3</a> und was hat er jetzt daraus gelernt? Könnte er jetzt die nächste Aufgabe aus dem Buch besser lösen?</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/25519">@winux</a> was ist denn deine Muttersprache?</p>
<p>//edit deine For-Schleife lässt sich wie folgt zerlegen (ich gehe einfach davon aus, dass du bereits while kennst):</p>
<pre><code class="language-cpp">int i=0;
while (i!= weight.size()){
   //tue das was in der For-Schleife zwischen den {...} steht
   //...
   ++i;
}
</code></pre>
<p>Hilft dir das weiter?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000485</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000485</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Thu, 30 Dec 2010 19:15:18 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 19:18:45 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/5202">@otze</a><br />
Meine Muttersprache ist Ungarisch. Aber Deutsch kann ich auch gut, nur wenn ich etwas nicht verstehe dann lese es drei oder viermal. Ja while kenne ich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000488</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000488</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 19:18:45 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 19:30:53 GMT]]></title><description><![CDATA[<p>Jetzt bin weiter gekommen dank eure Hilfe. Und so ist die Aufgabe gelöst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000495</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000495</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Thu, 30 Dec 2010 19:30:53 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Thu, 30 Dec 2010 22:35:45 GMT]]></title><description><![CDATA[<p>otze schrieb:</p>
<blockquote>
<p>*Seufz*</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/24492">@inter2k3</a> und was hat er jetzt daraus gelernt? Könnte er jetzt die nächste Aufgabe aus dem Buch besser lösen?</p>
</blockquote>
<p>Hoffentlich, dass es für jedes Problem mehrere Lösungen gibt (auch wenn ich nur zwei präsentiert habe).<br />
Ausserdem war offensichtlich, dass er aufgrund der beschränkten Deutschkenntnisse die Aufgabe nicht richtig verstanden hat. Meine Hoffnung war, dass dies aus dem code (vorallem dem zweiten Beispiel) hervorgeht, was gefordert war.<br />
Dass die absoluten Grundlagenkenntnisse (z.b. for-schleife) noch nicht fundiert sind konnte ich ja nicht ahnen.<br />
Du erklärst die Funktionsweise der For-Schleife ja auch anhand von code <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/2000572</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000572</guid><dc:creator><![CDATA[inter2k3]]></dc:creator><pubDate>Thu, 30 Dec 2010 22:35:45 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Fri, 31 Dec 2010 14:57:48 GMT]]></title><description><![CDATA[<p>Das mit dem schleifen kenne ich schon, aber mich hat nur eins verwirrt das ich noch sowas nicht gesehen habe. Und zwar das:</p>
<pre><code class="language-cpp">for (int i = 0; i!= weight.size(); ++i)
</code></pre>
<p>Aber so etwas kenne ich schon:</p>
<pre><code class="language-cpp">for (int i = 0; i&lt;= weight.size(); ++i)
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2000753</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000753</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Fri, 31 Dec 2010 14:57:48 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Fri, 31 Dec 2010 15:49:14 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;vector&gt;
#include &lt;iostream&gt;

int main()
{
	std::vector&lt;double&gt; vec;

	vec.push_back(10);
	vec.push_back(15);
	vec.push_back(20);

	std::cout &lt;&lt; &quot;for (int i = 0; i &lt; vec.size(); ++i)&quot; &lt;&lt; std::endl;

	for (int i = 0; i &lt; vec.size(); ++i)
	{
		std::cout &lt;&lt; vec[i] &lt;&lt; std::endl;
	}

	std::cout &lt;&lt; &quot;\nfor (int i = 0; i &lt;= vec.size() - 1; ++i)&quot; &lt;&lt; std::endl;

	for (int i = 0; i &lt;= vec.size() - 1; ++i)
	{
		std::cout &lt;&lt; vec[i] &lt;&lt; std::endl;
	}

	std::cout &lt;&lt; &quot;\nfor (int i = 0; i != vec.size(); ++i)&quot; &lt;&lt; std::endl;

	for (int i = 0; i != vec.size(); ++i)
	{
		std::cout &lt;&lt; vec[i] &lt;&lt; std::endl;
	}

	return 0;
}
</code></pre>
<p>Alle 3 Schleifen tun das gleiche. Es ist nur eine unterschiedliche Formulierung.</p>
<p>Ich würde aber zur ersten Variante raten.</p>
<pre><code class="language-cpp">for (int i = 0; i &lt; vec.size(); ++i)
	{
		std::cout &lt;&lt; vec[i] &lt;&lt; std::endl;
	}
</code></pre>
<p>Die zweite Variante ist unnötig kompliziert:</p>
<pre><code class="language-cpp">for (int i = 0; i &lt;= vec.size() - 1; ++i)
	{
		std::cout &lt;&lt; vec[i] &lt;&lt; std::endl;
	}
</code></pre>
<p>Und die dritte Variante empfinde ich als unschön. Ich vergleiche nur bei Iteratoren auf ungleich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000786</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000786</guid><dc:creator><![CDATA[,m.m,.m,]]></dc:creator><pubDate>Fri, 31 Dec 2010 15:49:14 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Fri, 31 Dec 2010 19:04:24 GMT]]></title><description><![CDATA[<p>Jetzt ist alles klar, und dank eure Hilfe hab ich wieder was gelernt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000847</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000847</guid><dc:creator><![CDATA[winux]]></dc:creator><pubDate>Fri, 31 Dec 2010 19:04:24 GMT</pubDate></item><item><title><![CDATA[Reply to Summe zweier vector Container on Sat, 01 Jan 2011 10:46:31 GMT]]></title><description><![CDATA[<p>Winux um das nochmal zu betonen.</p>
<p>In C++ werden Intervalle (ranges) immer als Halboffen [begin, end) angegeben.<br />
Das bedeutet, das <em>begin</em> noch dazugehört und <em>end</em> <strong>nicht</strong>.</p>
<p>Deswegen sind</p>
<pre><code class="language-cpp">for (int i = 0; i&lt;= weight.size(); ++i)
</code></pre>
<p>und</p>
<pre><code class="language-cpp">for (int i = 0; i != weight.size(); ++i)
</code></pre>
<p>nicht das selbe! Die Merkregel ist: bei 5 Durchläufen bei 0 anfangen und<br />
auf <em>i != 5</em> oder auf <em>i &lt; 5</em> testen. Und am besten in eigenem Code<br />
das immer ganz genauso machen. Dann muss man nämlich nicht jedes mal überlegen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2000916</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2000916</guid><dc:creator><![CDATA[Panke]]></dc:creator><pubDate>Sat, 01 Jan 2011 10:46:31 GMT</pubDate></item></channel></rss>