<?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[Rekursive Funktionen]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich beschäftige mich jetzt seit ein paar Tagen mit C++ und bin bei rekursiven Funktionen angelangt. Kann mir bitte jemand den Ablauf folgender Funktion erklären? Main() verstehe ich noch. Aber der Ablauf der zweiten Funktion ist mir nicht klar. Ich bitte um Hilfe. Schon mal vielen Dank im Voraus.</p>
<p>typedef unsigned short USHORT;<br />
typedef unsigned long ULONG;<br />
ULONG GetPower(USHORT n, USHORT power);<br />
int main()<br />
{<br />
USHORT number, power;<br />
ULONG answer;<br />
cout &lt;&lt; &quot;Geben Sie eine Zahl ein: &quot;;<br />
cin &gt;&gt; number;<br />
cout &lt;&lt; &quot;Zu welcher Potenz? &quot;;<br />
cin &gt;&gt; power;<br />
answer = GetPower(number,power);<br />
cout &lt;&lt; number &lt;&lt; &quot; hoch &quot; &lt;&lt; power &lt;&lt; &quot;ist gleich &quot; &lt;&lt;<br />
answer &lt;&lt; endl;</p>
<p>return 0;</p>
<p>}</p>
<p>ULONG GetPower(USHORT n, USHORT power)<br />
{<br />
if(power == 1)<br />
return n;<br />
else<br />
return (n * GetPower(n,power-1));<br />
}</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/221442/rekursive-funktionen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 06 Oct 2026 04:16:04 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/221442.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 29 Aug 2008 08:23:28 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Rekursive Funktionen on Fri, 29 Aug 2008 08:23:28 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich beschäftige mich jetzt seit ein paar Tagen mit C++ und bin bei rekursiven Funktionen angelangt. Kann mir bitte jemand den Ablauf folgender Funktion erklären? Main() verstehe ich noch. Aber der Ablauf der zweiten Funktion ist mir nicht klar. Ich bitte um Hilfe. Schon mal vielen Dank im Voraus.</p>
<p>typedef unsigned short USHORT;<br />
typedef unsigned long ULONG;<br />
ULONG GetPower(USHORT n, USHORT power);<br />
int main()<br />
{<br />
USHORT number, power;<br />
ULONG answer;<br />
cout &lt;&lt; &quot;Geben Sie eine Zahl ein: &quot;;<br />
cin &gt;&gt; number;<br />
cout &lt;&lt; &quot;Zu welcher Potenz? &quot;;<br />
cin &gt;&gt; power;<br />
answer = GetPower(number,power);<br />
cout &lt;&lt; number &lt;&lt; &quot; hoch &quot; &lt;&lt; power &lt;&lt; &quot;ist gleich &quot; &lt;&lt;<br />
answer &lt;&lt; endl;</p>
<p>return 0;</p>
<p>}</p>
<p>ULONG GetPower(USHORT n, USHORT power)<br />
{<br />
if(power == 1)<br />
return n;<br />
else<br />
return (n * GetPower(n,power-1));<br />
}</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1573408</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1573408</guid><dc:creator><![CDATA[stromberg76]]></dc:creator><pubDate>Fri, 29 Aug 2008 08:23:28 GMT</pubDate></item><item><title><![CDATA[Reply to Rekursive Funktionen on Fri, 29 Aug 2008 08:46:41 GMT]]></title><description><![CDATA[<p>Die Funktion gibt entweder n zurück bei der Potenz 1, oder sie ruft sich selbst auf (mit Potenz minus 1) und multipliziert dieses Ergebnis mit n. Oder was ist nicht klar? Was eine rekursive Funktion ausmacht, ist ja gerade, dass sie sich selbst aufruft. <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>Sonst geh die Funktion doch einfach mit dem Debugger durch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1573419</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1573419</guid><dc:creator><![CDATA[_matze]]></dc:creator><pubDate>Fri, 29 Aug 2008 08:46:41 GMT</pubDate></item><item><title><![CDATA[Reply to Rekursive Funktionen on Fri, 29 Aug 2008 08:57:32 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>ich finde, Rekursion begreift man am leichtesten mit einem Zettel und einem Stift ... (aber vielleicht bin ich einfach nur altmodisch)</p>
<p>Vielleicht mal die einfachste rekursive Funktion, die mir einfällt:</p>
<pre><code class="language-cpp">void f(int i) {
   if(i&gt;0) f(i-1);
}
</code></pre>
<p>... dann sollte man noch durch- und bedenken, dass <em>jeder Aufruf</em> einer Funktion <em>seinen eigenen Satz an lokalen Variablen</em>(inklusive der Argumente und Returnvariablen) hat, dann kann man auch komplexeren rekursiven Funktionen auf die Schliche kommen ...</p>
<p>.. ist allerdings eine Fleißarbeit (bad news für die Faulen, good news für die, die sich für &quot;zu dumm&quot; halten <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>
<p>Gruß,</p>
<p>Simon2.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1573438</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1573438</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Fri, 29 Aug 2008 08:57:32 GMT</pubDate></item><item><title><![CDATA[Reply to Rekursive Funktionen on Fri, 29 Aug 2008 09:14:25 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">ULONG GetPower(USHORT n, USHORT power)
{
    if(power == 1)
     return n;
    else
       return (n * GetPower(n,power-1));
}
</code></pre>
<p>Einfach mal auflösen so einen Aufruf. Zum Beispiel für GetPower(2, 4):</p>
<p>GetPower(2, 4) = 2 * GetPower(2, 3)<br />
GetPower(2, 3) = 2 * GetPower(2, 2)<br />
GetPower(2, 2) = 2 * GetPower(2, 1)<br />
GetPower(2, 1) = 2</p>
<p>Dann einsetzen:<br />
GetPower(2, 4) = 2 * 2 * GetPower(2, 2)<br />
GetPower(2, 4) = 2 * 2 * 2 * GetPower(2, 1)<br />
GetPower(2, 4) = 2 * 2 * 2 * 2<br />
GetPower(2, 4) = 16</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1573456</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1573456</guid><dc:creator><![CDATA[Fellhuhn]]></dc:creator><pubDate>Fri, 29 Aug 2008 09:14:25 GMT</pubDate></item><item><title><![CDATA[Reply to Rekursive Funktionen on Sat, 30 Aug 2008 12:33:48 GMT]]></title><description><![CDATA[<p>Vielen Dank für die Antworten!!</p>
<p>Eure Beiträge haben mir sehr geholfen das Problem zu verstehen!!<br />
Besonderen Dank an Fellhuhn!!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1573945</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1573945</guid><dc:creator><![CDATA[stromberg76]]></dc:creator><pubDate>Sat, 30 Aug 2008 12:33:48 GMT</pubDate></item></channel></rss>