<?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[Münzwechsler]]></title><description><![CDATA[<p>Hi,</p>
<p>ich habe folgendes Problem. Ich soll ein Programm schreiben, was für einen gegebene Betrag (Bsp.: n=5)<br />
alle Möglichkeiten des Münzwechsels ausgibt. Also zum Beispiel 5*1 und 2*2+1 (in diesem Fall gibt es 2 Münzsorten). Ich denke diese Aufgabe ist rekursiv zu lösen, komme jedoch nicht weiter. Hat jemand von euch so etwas vielleicht schon mal gemacht und kann mir helfen????</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/141132/münzwechsler</link><generator>RSS for Node</generator><lastBuildDate>Mon, 31 Aug 2026 08:56:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/141132.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 19 Mar 2006 15:32:17 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Münzwechsler on Sun, 19 Mar 2006 15:32:17 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich habe folgendes Problem. Ich soll ein Programm schreiben, was für einen gegebene Betrag (Bsp.: n=5)<br />
alle Möglichkeiten des Münzwechsels ausgibt. Also zum Beispiel 5*1 und 2*2+1 (in diesem Fall gibt es 2 Münzsorten). Ich denke diese Aufgabe ist rekursiv zu lösen, komme jedoch nicht weiter. Hat jemand von euch so etwas vielleicht schon mal gemacht und kann mir helfen????</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1019719</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1019719</guid><dc:creator><![CDATA[Münzwechsler]]></dc:creator><pubDate>Sun, 19 Mar 2006 15:32:17 GMT</pubDate></item><item><title><![CDATA[Reply to Münzwechsler on Sun, 19 Mar 2006 16:27:56 GMT]]></title><description><![CDATA[<p>naja.. z.B. so (rohentwurf):</p>
<pre><code class="language-cpp">void getCoins(int* muenzen,int* usedMuenzen, int length, int value, int start ) 
{
	int* usedMuenzenLocal = new int[length];
	//kopiere die benutzen münzen..
	for(int i = 0; i &lt; length; ++i)
		usedMuenzenLocal[i] = usedMuenzen[i];

    for(int i = start; i &lt; length;) 
	{		
		if(value &gt;= muenzen[i])
		{
			//man könnte hier aber auch muenze[i+1] stattdessen nehmen...
			//die möglichkeit wollen wir natürlich nicht unterschlagen --&gt;
			getCoins(muenzen,usedMuenzenLocal, length, value,i+1);

			//jetzt jedenfalls eine muenze nehmen
			++usedMuenzenLocal[i];
			//muenzwert noch vom übrigen wert abziehn
			value -= muenzen[i];
		}
		else
		{
			//mit der muenze kann man nix mehr anfangen...
			++i;
		}
	}
	if(value == 0)
	{
		cout &lt;&lt; &quot;Moegliche Muenzausgabe: &quot;;
		for(int i = 0; i &lt; length; ++i)
		{
			cout &lt;&lt; usedMuenzenLocal[i] &lt;&lt; &quot;x &quot; &lt;&lt; muenzen[i] &lt;&lt; &quot; &quot;;
		}
		cout &lt;&lt; endl;
	}
	delete[] usedMuenzenLocal;
}

int main() 
{ 
	int muenzen[] = {200,100,50,20,10,5,2,1}; //oder so ;)
	int length = sizeof(muenzen)/sizeof(int);
	int* usedMuenzen = new int[length];
	for(int i = 0; i &lt; length; ++i) 
	{
		usedMuenzen[i] = 0;
	}
    //value ist der wert, der in muenzen ausgegeben werden soll.. (in cent)
	int value = 30;
	getCoins(muenzen,usedMuenzen,length,value,0);
	delete[] usedMuenzen;

}
</code></pre>
<p>das geht aber bestimmt noch effektiver <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1019748</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1019748</guid><dc:creator><![CDATA[life]]></dc:creator><pubDate>Sun, 19 Mar 2006 16:27:56 GMT</pubDate></item><item><title><![CDATA[Reply to Münzwechsler on Sun, 19 Mar 2006 16:30:45 GMT]]></title><description><![CDATA[<p>Fertige Lösungen sind Scheiße.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1019752</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1019752</guid><dc:creator><![CDATA[-100 Punkte]]></dc:creator><pubDate>Sun, 19 Mar 2006 16:30:45 GMT</pubDate></item></channel></rss>