<?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[warum warnung, dass median nicht inizialisiert ist?]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich muss mittelwert, median und standardabweichung berechnen. hier ist mein Code und ich bekomme warnung dass median nicht inizialisiert ist und summeStandardabweichung kann uninzialisiert sein?<br />
Natürlich kann ich alle als 0 inizialisieren, aber frage ich mich warum ich diese meldung bekomme, wo ich bei mittelwert nicht bekomme. Vieleicht bleibt diese wissen im kopf und weiß für zukunft mehr</p>
<pre><code>#include&lt;iostream&gt;
#include&lt;cmath&gt;
using namespace std;

int main(){

	int const max = 50;
	int zahle[max];
	// array_groesse zeigt wie groess array wird, dabei wird unten ueberprueft, damit es 50 nicht überschreitet
	int array_groesse = 0;
	// mit neu wird die zahle in array eingegeben
	int neu;
	int sum = 0;
	int mittelwert;
	int median;
	double summeStandardabweichung;

	do{
		cin &gt;&gt; neu;

		if(neu != 0 &amp;&amp; array_groesse &lt; max ){

			zahle[array_groesse] = neu;
			array_groesse +=1;
			sum += neu;
		}

	}while(neu != 0);

	mittelwert = sum/(array_groesse);
	cout &lt;&lt; &quot;----------------------------------&quot; &lt;&lt;endl ;
	cout &lt;&lt; &quot;Mittelwert ist - &quot; &lt;&lt; mittelwert &lt;&lt; endl;

	cout &lt;&lt; &quot;----------------------------------&quot; &lt;&lt;endl ;
		if(array_groesse%2 == 0){
		median += (zahle[array_groesse/2-1] + zahle[array_groesse/2])/2;
		cout &lt;&lt;&quot;Median ist : &quot; &lt;&lt; median &lt;&lt; endl;

	}else{
		 median +=  zahle[(array_groesse - 1)/2];
		cout &lt;&lt; &quot;Median ist : &quot; &lt;&lt; median &lt;&lt; endl;
	}
	cout &lt;&lt; &quot;----------------------------------&quot; &lt;&lt;endl ;
	for(int i = 0; i &lt; array_groesse; i++)
		summeStandardabweichung += pow(double (zahle[i]-median),2);
		cout &lt;&lt; &quot;Standardabweichung ist : &quot; &lt;&lt;  sqrt(summeStandardabweichung/(array_groesse - 1)) &lt;&lt; endl;

	return 0;

}
</code></pre>
<p>danke nochmals</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/310760/warum-warnung-dass-median-nicht-inizialisiert-ist</link><generator>RSS for Node</generator><lastBuildDate>Tue, 04 Aug 2026 05:35:42 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/310760.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 19 Nov 2012 14:05:09 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to warum warnung, dass median nicht inizialisiert ist? on Mon, 19 Nov 2012 14:05:09 GMT]]></title><description><![CDATA[<p>Hallo Leute,</p>
<p>ich muss mittelwert, median und standardabweichung berechnen. hier ist mein Code und ich bekomme warnung dass median nicht inizialisiert ist und summeStandardabweichung kann uninzialisiert sein?<br />
Natürlich kann ich alle als 0 inizialisieren, aber frage ich mich warum ich diese meldung bekomme, wo ich bei mittelwert nicht bekomme. Vieleicht bleibt diese wissen im kopf und weiß für zukunft mehr</p>
<pre><code>#include&lt;iostream&gt;
#include&lt;cmath&gt;
using namespace std;

int main(){

	int const max = 50;
	int zahle[max];
	// array_groesse zeigt wie groess array wird, dabei wird unten ueberprueft, damit es 50 nicht überschreitet
	int array_groesse = 0;
	// mit neu wird die zahle in array eingegeben
	int neu;
	int sum = 0;
	int mittelwert;
	int median;
	double summeStandardabweichung;

	do{
		cin &gt;&gt; neu;

		if(neu != 0 &amp;&amp; array_groesse &lt; max ){

			zahle[array_groesse] = neu;
			array_groesse +=1;
			sum += neu;
		}

	}while(neu != 0);

	mittelwert = sum/(array_groesse);
	cout &lt;&lt; &quot;----------------------------------&quot; &lt;&lt;endl ;
	cout &lt;&lt; &quot;Mittelwert ist - &quot; &lt;&lt; mittelwert &lt;&lt; endl;

	cout &lt;&lt; &quot;----------------------------------&quot; &lt;&lt;endl ;
		if(array_groesse%2 == 0){
		median += (zahle[array_groesse/2-1] + zahle[array_groesse/2])/2;
		cout &lt;&lt;&quot;Median ist : &quot; &lt;&lt; median &lt;&lt; endl;

	}else{
		 median +=  zahle[(array_groesse - 1)/2];
		cout &lt;&lt; &quot;Median ist : &quot; &lt;&lt; median &lt;&lt; endl;
	}
	cout &lt;&lt; &quot;----------------------------------&quot; &lt;&lt;endl ;
	for(int i = 0; i &lt; array_groesse; i++)
		summeStandardabweichung += pow(double (zahle[i]-median),2);
		cout &lt;&lt; &quot;Standardabweichung ist : &quot; &lt;&lt;  sqrt(summeStandardabweichung/(array_groesse - 1)) &lt;&lt; endl;

	return 0;

}
</code></pre>
<p>danke nochmals</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272342</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272342</guid><dc:creator><![CDATA[khati]]></dc:creator><pubDate>Mon, 19 Nov 2012 14:05:09 GMT</pubDate></item><item><title><![CDATA[Reply to warum warnung, dass median nicht inizialisiert ist? on Mon, 19 Nov 2012 14:15:58 GMT]]></title><description><![CDATA[<p>Mittelwert wird in Zeile 31 initialisiert. median wird in Zeile 38 gelesen, ohne vorher initialisiert worden zu sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272345</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272345</guid><dc:creator><![CDATA[SG1]]></dc:creator><pubDate>Mon, 19 Nov 2012 14:15:58 GMT</pubDate></item><item><title><![CDATA[Reply to warum warnung, dass median nicht inizialisiert ist? on Mon, 19 Nov 2012 14:17:19 GMT]]></title><description><![CDATA[<p>mittelwert wird vor jeder anderen Verwendung einmal etwas zugewiesen:</p>
<pre><code class="language-cpp">mittelwert = sum/(array_groesse);
</code></pre>
<p>Der Compiler erkennt, dass der Wert von mittelwert vorher keine Rolle spielt und warnt deshalb nicht, dass mittelwert vorher uninitialisiert ist. median wird erstmals so verwendet:</p>
<pre><code class="language-cpp">median += (zahle[array_groesse/2-1] + zahle[array_groesse/2])/2;
</code></pre>
<p>...wodurch der neue Wert von median vom alten Wert abhängt, der vorher unspezifiziert ist, weil median uninitialisiert ist. Der Compiler erkennt dies und warnt dich davor, weil das mit ziemlicher Wahrscheinlichkeit Unfug ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272346</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272346</guid><dc:creator><![CDATA[seldon]]></dc:creator><pubDate>Mon, 19 Nov 2012 14:17:19 GMT</pubDate></item><item><title><![CDATA[Reply to warum warnung, dass median nicht inizialisiert ist? on Mon, 19 Nov 2012 14:41:01 GMT]]></title><description><![CDATA[<p>Mal so am Rande:<br />
Der Median wird natürlich auch falsch berechnet, wenn er nicht an der erwarteten Position der Eingabe steht. Um sicherzustellen, dass dem so ist, kannst du vorher <a href="http://www.cplusplus.com/reference/algorithm/nth_element/" rel="nofollow">std::nth_element</a> aus dem <a href="http://www.cplusplus.com/reference/algorithm/" rel="nofollow">&lt;algorithm&gt;</a>-Header verwenden. Dabei werden die Elemente im Array allerdings ein bisschen umsortiert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272348</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272348</guid><dc:creator><![CDATA[krümelkacker]]></dc:creator><pubDate>Mon, 19 Nov 2012 14:41:01 GMT</pubDate></item><item><title><![CDATA[Reply to warum warnung, dass median nicht inizialisiert ist? on Mon, 19 Nov 2012 14:43:31 GMT]]></title><description><![CDATA[<p>Danke für eure tolle Hilfe<br />
In der angabe steht, dass es aufsteigend oder absteigend geordnet ist <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>danke nochmals</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272349</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272349</guid><dc:creator><![CDATA[khati]]></dc:creator><pubDate>Mon, 19 Nov 2012 14:43:31 GMT</pubDate></item><item><title><![CDATA[Reply to warum warnung, dass median nicht inizialisiert ist? on Tue, 20 Nov 2012 03:42:40 GMT]]></title><description><![CDATA[<p>EDIT: <strong>was folgt ist vermutlich Unsinn, siehe folgende Beiträge.</strong> /EDIT</p>
<p>Die übliche Definition des Median ist dass es exakt der Wert des mittleren Elements ist.<br />
Nach der Definition brauchst du keine Fallunterscheidung zwischen gerade Anzahl vs. ungerade Anzahl. Bzw. du brauchst sie nicht nur nicht, dein &quot;gerade Anzahl&quot; Code ist sogar falsch.<br />
(Mit dieser Definition ist der Median dann nämlich auch für Mengen definiert deren Elemente man zwar sortieren kann, aber nicht mitteln. Wie z.B. Strings.)</p>
<p>Falls natürlich in der Voragbe steht dass du im Fall &quot;gerade Anzahl&quot; die beiden mittleren Elemente mitteln sollst, bzw. ihr es in der Vorlesung/im Unterricht/... so gelernt habt, dann solltest du es natürlich auch so machen. D.h. in dem Fall wäre dieser Teil deines Codes dann OK.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272570</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272570</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Tue, 20 Nov 2012 03:42:40 GMT</pubDate></item><item><title><![CDATA[Reply to warum warnung, dass median nicht inizialisiert ist? on Tue, 20 Nov 2012 03:33:25 GMT]]></title><description><![CDATA[<blockquote>
<p>Die übliche Definition des Median ist dass es exakt der Wert des mittleren Elements ist.<br />
Nach der Definition brauchst du keine Fallunterscheidung zwischen gerade Anzahl vs. ungerade Anzahl. Bzw. du brauchst sie nicht nur nicht, dein &quot;gerade Anzahl&quot; Code ist sogar falsch.</p>
</blockquote>
<p>Was ist den der Median von {1,3}? Was ist das mittlere Element?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272578</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272578</guid><dc:creator><![CDATA[KMT]]></dc:creator><pubDate>Tue, 20 Nov 2012 03:33:25 GMT</pubDate></item><item><title><![CDATA[Reply to warum warnung, dass median nicht inizialisiert ist? on Tue, 20 Nov 2012 03:40:22 GMT]]></title><description><![CDATA[<p>Definitionssache.<br />
Entweder 1 oder 3.</p>
<p>ps: Wikipedia teilt meine Auffassung des Begriffs Median NICHT. Dort steht auch dass im Falle einer geraden Element-Anzahl gemittelt wird. Mitteln scheint also doch eher üblich zu sein (sofern möglich).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272580</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272580</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Tue, 20 Nov 2012 03:40:22 GMT</pubDate></item><item><title><![CDATA[Reply to warum warnung, dass median nicht inizialisiert ist? on Tue, 20 Nov 2012 09:56:35 GMT]]></title><description><![CDATA[<p>ja mitteln wurde uns auch in mathe beigebracht.<br />
ich persönlich würde auch eher den mittelsten wert +0 oder +1 nehmen... ist intuitiver</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2272643</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2272643</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Tue, 20 Nov 2012 09:56:35 GMT</pubDate></item></channel></rss>