<?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[Array Werte innerhalb des Arrays vergleichen und bei Unterschied hochzählen]]></title><description><![CDATA[<p>Hm ...</p>
<p>also es handelt sich zwar immer noch um <a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-206920.html" rel="nofollow">die Aufgabe</a>, aber um ein neues Problem und deswegen mal ein nues Topic in der Hoffnung es ist besser für die Suchmaschine bzw Leute mit einem ähnlichen Problem.</p>
<p>kann mir zufällig jemand sagen, wie ich den Inhalt eines Arrays vergleichen kann um dann auszugeben, wieviele der Array Inhalte sich voneinander unterscheiden?</p>
<p>also differentInRotation soll feststellen, wieviele unterschiedliche Zahlen im Array rotation enthalten sind und diesen Wert (also die Anzahl der unterschiedlichen Zahlen)<br />
zurückgeben.</p>
<pre><code class="language-cpp">int Roulette::differentInRotation()
{
	int differentWinnersInRotation=0;
	for (int i = 0; i&lt;=36; i++)
	{
		if (rotation[i]==rotation[i])
		{
			differentWinnersInRotation=;
		}
	}

	return differentWinnersInRotation;
}
</code></pre>
<p>Ergibt logischerweise ja null weil immer die gleiche zahl miteinander vergölöichen wird. Wenn ich nun an einer stelle einen festen array platz (also zb rotation[1]!=rotation[i]) vergleiichen lassen würde, würden zwar unterschiede erkannt, aber eben nur welche zahlen sich gegenüber dem 1 (bzw2) array Eintrag unterscheiden.</p>
<p>Gibt es da ne elegante und einfach zu verstehenden Lösung?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/206927/array-werte-innerhalb-des-arrays-vergleichen-und-bei-unterschied-hochzählen</link><generator>RSS for Node</generator><lastBuildDate>Sat, 10 Oct 2026 23:58:17 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/206927.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 01 Mar 2008 17:23:55 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Array Werte innerhalb des Arrays vergleichen und bei Unterschied hochzählen on Sat, 01 Mar 2008 17:23:55 GMT]]></title><description><![CDATA[<p>Hm ...</p>
<p>also es handelt sich zwar immer noch um <a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-206920.html" rel="nofollow">die Aufgabe</a>, aber um ein neues Problem und deswegen mal ein nues Topic in der Hoffnung es ist besser für die Suchmaschine bzw Leute mit einem ähnlichen Problem.</p>
<p>kann mir zufällig jemand sagen, wie ich den Inhalt eines Arrays vergleichen kann um dann auszugeben, wieviele der Array Inhalte sich voneinander unterscheiden?</p>
<p>also differentInRotation soll feststellen, wieviele unterschiedliche Zahlen im Array rotation enthalten sind und diesen Wert (also die Anzahl der unterschiedlichen Zahlen)<br />
zurückgeben.</p>
<pre><code class="language-cpp">int Roulette::differentInRotation()
{
	int differentWinnersInRotation=0;
	for (int i = 0; i&lt;=36; i++)
	{
		if (rotation[i]==rotation[i])
		{
			differentWinnersInRotation=;
		}
	}

	return differentWinnersInRotation;
}
</code></pre>
<p>Ergibt logischerweise ja null weil immer die gleiche zahl miteinander vergölöichen wird. Wenn ich nun an einer stelle einen festen array platz (also zb rotation[1]!=rotation[i]) vergleiichen lassen würde, würden zwar unterschiede erkannt, aber eben nur welche zahlen sich gegenüber dem 1 (bzw2) array Eintrag unterscheiden.</p>
<p>Gibt es da ne elegante und einfach zu verstehenden Lösung?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1466190</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1466190</guid><dc:creator><![CDATA[ThaRealMatix]]></dc:creator><pubDate>Sat, 01 Mar 2008 17:23:55 GMT</pubDate></item><item><title><![CDATA[Reply to Array Werte innerhalb des Arrays vergleichen und bei Unterschied hochzählen on Sat, 01 Mar 2008 17:38:13 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">unsigned int same (0);
max = arr.length ();
for (int i (0); i &lt; max-1; ++i)
{
  for (int j (i+1); j &lt; max; ++j)
  {
    if (arr[i] == arr[j])
      same++;
  }
}
</code></pre>
<p>ok? ^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1466199</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1466199</guid><dc:creator><![CDATA[unskilled]]></dc:creator><pubDate>Sat, 01 Mar 2008 17:38:13 GMT</pubDate></item><item><title><![CDATA[Reply to Array Werte innerhalb des Arrays vergleichen und bei Unterschied hochzählen on Sat, 01 Mar 2008 18:10:19 GMT]]></title><description><![CDATA[<p>Hm hallo,</p>
<p>also ich habs mal umgestellt und es liefert eindeutig zuviele Werte, weil es wohl jede Zahl mit jeder Vergleicht und die zahl hochsetzt, sobald sie sich unterscheidet gell?</p>
<p>Es soll aber eben nur auslesen, wiviele Zahlen sich innerhalb des Arrays unterscheiden, was im maximalfall 37 sein kann, wenn jedesmal ne andere zahl herausgekommen wäre bzw in jedem feld ein anderer wert steht.</p>
<p>das Ergebnis müsste aber sein, das wenn bei 37 Felder an 6 stellen die gleiche Zahl steht, sich 31 zahlen unterscheiden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1466224</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1466224</guid><dc:creator><![CDATA[ThaRealMatix]]></dc:creator><pubDate>Sat, 01 Mar 2008 18:10:19 GMT</pubDate></item><item><title><![CDATA[Reply to Array Werte innerhalb des Arrays vergleichen und bei Unterschied hochzählen on Sat, 01 Mar 2008 18:29:39 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">int Roulette::differentInRotation()
{
    vector&lt;int&gt; newRot(rotation, rotation+37);
    // vermutlich besser:
    // vector&lt;int&gt; newRot(37);
    // newRot.assign(rotation, rotation+37);

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

    return newRot.size() - ( newRot.end() - unique(newRot.begin(),newRot.end()) );
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1466243</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1466243</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sat, 01 Mar 2008 18:29:39 GMT</pubDate></item><item><title><![CDATA[Reply to Array Werte innerhalb des Arrays vergleichen und bei Unterschied hochzählen on Sat, 01 Mar 2008 22:13:01 GMT]]></title><description><![CDATA[<p>geht es auch irgendwie nur mit dem array?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1466365</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1466365</guid><dc:creator><![CDATA[ThaRealMatix]]></dc:creator><pubDate>Sat, 01 Mar 2008 22:13:01 GMT</pubDate></item><item><title><![CDATA[Reply to Array Werte innerhalb des Arrays vergleichen und bei Unterschied hochzählen on Sat, 01 Mar 2008 22:27:54 GMT]]></title><description><![CDATA[<p>ThaRealMatix schrieb:</p>
<blockquote>
<p>geht es auch irgendwie nur mit dem array?</p>
</blockquote>
<p>Müsste eigentlich genauso gehen.<br />
Als &quot;.begin()/.end()&quot; kannst Du einfach den Zeiger auf das erste (&amp;arr[0] oder einfach arr) und hinter das letzte Element (&amp;arr[size] oder arr+size).<br />
(Die Zahl der Elemente musst Du natürlich sowieso kennen ...)</p>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1466370</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1466370</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Sat, 01 Mar 2008 22:27:54 GMT</pubDate></item><item><title><![CDATA[Reply to Array Werte innerhalb des Arrays vergleichen und bei Unterschied hochzählen on Sun, 02 Mar 2008 12:39:11 GMT]]></title><description><![CDATA[<p>ThaRealMatix schrieb:</p>
<blockquote>
<p>geht es auch irgendwie nur mit dem array?</p>
</blockquote>
<p>Ich habs nur in nen Vector gesteckt, da ich nicht wusste, ob du dein Array in der selben Ordnung behalten willst. Das ganze kannst du auch natürlich so machen:</p>
<pre><code class="language-cpp">int Roulette::differentInRotation()
{
    const int* end = rotation+37;

    sort(rotation, end);   
    return 37 - ( end - unique(rotation, end) );
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1466570</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1466570</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Sun, 02 Mar 2008 12:39:11 GMT</pubDate></item></channel></rss>