<?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[c++ Zyklus mit rekursiven funktionen (Programm stürzt ab)]]></title><description><![CDATA[<p>Hallo,<br />
Ich bin noch Anfänger in C++ und habe eine Hausaufgabe. In dieser muss ich einen Zyklus feststellen (abcabca = zyklus ; abcabcd = kein zyklus) und die Länge dieses Zyklus ausgeben. In dem Fall 3.<br />
Nun hab ich mit viel Hilfe ein Programm geschrieben, welches allerdings immer abstürzt. Ich habe aber keine Ahnung warum und würde deswegen um Hilfe bitten.</p>
<p>Ich arbeite mit DevC++ auf Windows 7</p>
<p>Mein Quellcode:</p>
<pre><code>#include &lt;iostream&gt;
using namespace std;

int f (char*a , int zlen)
    {
        char*zyklus = new char [zlen];

        for (int i=0 ; i &lt; zlen; i=i+1)
                zyklus [i]=a[i];

        for (int j=0 ; a [j]!= '\0' ; j=j+1)
            {

                if (a[j] != zyklus[j%zlen])

                          zlen=f(a,zlen++);
            }

        return zlen;
     }

int main ()
{
 	int start=1;
    while (start!=0)
    	{

        char* a;
   		cout &lt;&lt; &quot;Zeichenkette eingeben: &quot;;
   		cin &gt;&gt; (a=new char);

        int zlen= f(a, 1);

                if (zlen==sizeof(a-1))
                        cout&lt;&lt; &quot;nicht zyklisch&quot;;

                else
                        cout &lt;&lt; &quot;zykluslaenge beträgt: &quot; &lt;&lt; zlen &lt;&lt; endl;

  		cout &lt;&lt; &quot;0 um Programm zu beenden!&quot; &lt;&lt;endl; 
 	 	cin &gt;&gt; start;
  		if(start==0)
  		{
   		return 0;
  		}
		}

}
</code></pre>
<p>Vielen Dank,<br />
Lg Harry</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/325655/c-zyklus-mit-rekursiven-funktionen-programm-stürzt-ab</link><generator>RSS for Node</generator><lastBuildDate>Sun, 12 Jul 2026 04:09:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/325655.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 12 May 2014 13:09:04 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to c++ Zyklus mit rekursiven funktionen (Programm stürzt ab) on Mon, 12 May 2014 13:09:04 GMT]]></title><description><![CDATA[<p>Hallo,<br />
Ich bin noch Anfänger in C++ und habe eine Hausaufgabe. In dieser muss ich einen Zyklus feststellen (abcabca = zyklus ; abcabcd = kein zyklus) und die Länge dieses Zyklus ausgeben. In dem Fall 3.<br />
Nun hab ich mit viel Hilfe ein Programm geschrieben, welches allerdings immer abstürzt. Ich habe aber keine Ahnung warum und würde deswegen um Hilfe bitten.</p>
<p>Ich arbeite mit DevC++ auf Windows 7</p>
<p>Mein Quellcode:</p>
<pre><code>#include &lt;iostream&gt;
using namespace std;

int f (char*a , int zlen)
    {
        char*zyklus = new char [zlen];

        for (int i=0 ; i &lt; zlen; i=i+1)
                zyklus [i]=a[i];

        for (int j=0 ; a [j]!= '\0' ; j=j+1)
            {

                if (a[j] != zyklus[j%zlen])

                          zlen=f(a,zlen++);
            }

        return zlen;
     }

int main ()
{
 	int start=1;
    while (start!=0)
    	{

        char* a;
   		cout &lt;&lt; &quot;Zeichenkette eingeben: &quot;;
   		cin &gt;&gt; (a=new char);

        int zlen= f(a, 1);

                if (zlen==sizeof(a-1))
                        cout&lt;&lt; &quot;nicht zyklisch&quot;;

                else
                        cout &lt;&lt; &quot;zykluslaenge beträgt: &quot; &lt;&lt; zlen &lt;&lt; endl;

  		cout &lt;&lt; &quot;0 um Programm zu beenden!&quot; &lt;&lt;endl; 
 	 	cin &gt;&gt; start;
  		if(start==0)
  		{
   		return 0;
  		}
		}

}
</code></pre>
<p>Vielen Dank,<br />
Lg Harry</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398803</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398803</guid><dc:creator><![CDATA[Canchuck]]></dc:creator><pubDate>Mon, 12 May 2014 13:09:04 GMT</pubDate></item><item><title><![CDATA[Reply to c++ Zyklus mit rekursiven funktionen (Programm stürzt ab) on Mon, 12 May 2014 13:37:14 GMT]]></title><description><![CDATA[<pre><code>cin &gt;&gt; (a=new char);
</code></pre>
<p>das ist unsinn aber ich bin zu müde das nun zu erklären. kannst du alles in jedem anfängerbuch nachlesen.</p>
<p>darfst du std::string verwenden? dann mach das.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398807</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398807</guid><dc:creator><![CDATA[sadfgsdgwer]]></dc:creator><pubDate>Mon, 12 May 2014 13:37:14 GMT</pubDate></item><item><title><![CDATA[Reply to c++ Zyklus mit rekursiven funktionen (Programm stürzt ab) on Mon, 12 May 2014 13:41:33 GMT]]></title><description><![CDATA[<p>Mein Trolldetektor läuft hier Amok, ich hab Mühe mir vorzustellen, dass das Posting ernstgemeint sein könnte. Die Fehler in dem Programm sehen fast aus wie absichtlich eingebaut.</p>
<blockquote>
<p>Nun hab ich mit viel Hilfe ein Programm geschrieben</p>
</blockquote>
<p>Ich würde vorschlagen, es nochmal ohne solche tolle &quot;Hilfe&quot; zu versuchen. Von vorne. Und dabei den ganzen Mist, den du nicht verstehst und den niemand verstehen kann, weglassen (siehe z.B. Vorposting, wer kommt auf sowas???)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398808</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398808</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Mon, 12 May 2014 13:41:33 GMT</pubDate></item><item><title><![CDATA[Reply to c++ Zyklus mit rekursiven funktionen (Programm stürzt ab) on Wed, 11 Jun 2014 22:25:58 GMT]]></title><description><![CDATA[<p>...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398811</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398811</guid><dc:creator><![CDATA[Swordfish]]></dc:creator><pubDate>Wed, 11 Jun 2014 22:25:58 GMT</pubDate></item><item><title><![CDATA[Reply to c++ Zyklus mit rekursiven funktionen (Programm stürzt ab) on Mon, 12 May 2014 13:47:59 GMT]]></title><description><![CDATA[<p>Canchuck schrieb:</p>
<blockquote>
<p>…</p>
</blockquote>
<p>Viel zu viele Fehler. Lies ein gutes Buch über C++. Deine bisherigen Quellen (nur der Lehrer?) taugen anscheinend nix.</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;string&gt;
using namespace std;
bool isCyclic(string str,size_t len) {
	for(size_t i=0; i&lt;str.length(); ++i)
		if(str[i]!=str[i%len])
			return false;
	return true;
}
int getCycleLength(string str) {
	for(size_t len=1; len!=str.length(); ++len)
		if(isCyclic(str,len))
			return len;
	return 0;
}
int main() {
	cout &lt;&lt; &quot;Zeichenkette eingeben: &quot;;
	string str;
	cin&gt;&gt;str;
	size_t zlen=getCycleLength(str);
	if(zlen==0)
		cout&lt;&lt; &quot;nicht zyklisch&quot;;
	else
		cout&lt;&lt;&quot;zykluslaenge beträgt: &quot;&lt;&lt;zlen&lt;&lt;'\n';
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2398814</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398814</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 12 May 2014 13:47:59 GMT</pubDate></item><item><title><![CDATA[Reply to c++ Zyklus mit rekursiven funktionen (Programm stürzt ab) on Mon, 12 May 2014 14:04:04 GMT]]></title><description><![CDATA[<p>erstmals vielen dank für die schnellen antworten <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="🙂"
    /><br />
Und ein Tutor hat mir bei dem Programm geholfen, also dachte ich nicht das es so schlecht ist.</p>
<p>@sadfgsdgwer: Ich hab das mit dem std::string schon oft gelesen, hab das aber noch nie in der vorlesung gehört und weis nicht was das genau bedeutet.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/904">@Bashar</a>: das ist ernst gemeint, und ich tu mir schwer damit, deswegn auch die Frage ins Forum. Ich werds nochmals Probiern, danke. Und ich verstehe das Programm, sofern der Tutor mir das richtig erklärt hat, das was ich nicht verstehe ist warum es nicht funktioniert.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/8250">@Swordfish</a>: ok, das wusst ich gar nicht. alles was ich gehört habe zu &quot;i++&quot; war das die variable +1 gerechnet wird, werds gleich umschreiben und sehn was raus kommt</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/106">@volkard</a>: ja meine quellen sind nur der Professor und hier und da mal ein Tutor. &quot;#include &lt;string&gt;&quot; hatten wir auch noch nicht. Ich werds nachlesen und mir Deinen Code ganz genau ansehen vielleicht komm ich dadurch auf meine Fehler, danke <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2398820</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398820</guid><dc:creator><![CDATA[Canchuck]]></dc:creator><pubDate>Mon, 12 May 2014 14:04:04 GMT</pubDate></item><item><title><![CDATA[Reply to c++ Zyklus mit rekursiven funktionen (Programm stürzt ab) on Mon, 12 May 2014 14:23:18 GMT]]></title><description><![CDATA[<p>Canchuck schrieb:</p>
<blockquote>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/106">@volkard</a>: ja meine quellen sind nur der Professor und hier und da mal ein Tutor.</p>
</blockquote>
<p>Ach. Muttu schnell ändern.</p>
<p>Canchuck schrieb:</p>
<blockquote>
<p>und mir Deinen Code ganz genau ansehen vielleicht komm ich dadurch auf meine Fehler, danke <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>
</blockquote>
<p>Keine Chance!</p>
<p>Anscheinend kommt die Aufgabe aus<br />
<a href="http://www.amazon.de/Algorithmen-Und-Probleml%C3%B6sungen-German-Edition/dp/3834801267" rel="nofollow">http://www.amazon.de/Algorithmen-Und-Problemlösungen-German-Edition/dp/3834801267</a><br />
und das würde beweisen, daß der Prof nicht proggern kann (wie üblich). Das würde bedeuten, daß Du in dem Buch die Lösungen finden würdest und höchst wahrscheinlich recht gut passende Anregungen, was Du für die Klausur vorbereiten solltest. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f4a1.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--light_bulb"
      title=":bulb:"
      alt="💡"
    /></p>
<p>Oh, ich fürchte, das Buch wird wegen der formalisierten Umständlichkeit vielen Profs gut gefallen und uns jahrelang hier belästigen.</p>
<p>Als Lernbuch würde ich an Deiner Stelle mal den Breymann lesen, recht umfassend, angemessenes Niveau, und im Endeffekt viel weniger Arbeit, als das tagelange rumstümpern, und macht auch noch viel mehr Spaß, wenn man was vernünftiges lernt.</p>
<p>Danach kannste so ein Witz-Programm in 5 Minuten reinklimpern und eine 1 kriegste auch.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398823</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398823</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 12 May 2014 14:23:18 GMT</pubDate></item><item><title><![CDATA[Reply to c++ Zyklus mit rekursiven funktionen (Programm stürzt ab) on Mon, 12 May 2014 14:26:55 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/106">@volkard</a>: Vielen Dank, das kauf ich mir gleich.<br />
mir gefällt das Programmieren. Und wenn ich mit diesem buch mehr lern als durch die vo ist alles gut <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="🙂"
    /><br />
Dankeschön</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398825</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398825</guid><dc:creator><![CDATA[Canchuck]]></dc:creator><pubDate>Mon, 12 May 2014 14:26:55 GMT</pubDate></item><item><title><![CDATA[Reply to c++ Zyklus mit rekursiven funktionen (Programm stürzt ab) on Mon, 12 May 2014 14:36:58 GMT]]></title><description><![CDATA[<p>Die Aufgabe im Buch ist leicht anders, da werden nur volle Wiederholungen gewertet, also abcabc hat 3, abcabca hat keine. Vielleicht wurde die Aufgabe leicht verändert, damit man erkennt, wenn jemand die Lösung aus dem Buch abschreibt?</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;cstring&gt;
using namespace std;
bool isCyclic(char* str,size_t slen,size_t zlen) {
	for(size_t i=0; i&lt;slen; ++i)
		if(str[i]!=str[i%zlen])
			return false;
	return true;
}
int getCycleLength(char* str,size_t slen) {
	for(size_t zlen=1; zlen!=slen; ++zlen)
		if(slen%zlen==0)//neu bei anderer aufgabe
			if(isCyclic(str,slen,zlen))
				return zlen;
	return 0;
}
int main() {
	cout &lt;&lt; &quot;Zeichenkette eingeben: &quot;;
	char str[100];
	cin&gt;&gt;str;
	size_t zlen=getCycleLength(str,strlen(str));
	if(zlen==0)
		cout&lt;&lt; &quot;nicht zyklisch&quot;;
	else
		cout&lt;&lt;&quot;zykluslaenge beträgt: &quot;&lt;&lt;zlen&lt;&lt;'\n';
}
</code></pre>
<p><a href="https://duckduckgo.com/?q=isbn+3446438947&amp;cppnetbooks" rel="nofollow">Der C++-Programmierer | ISBN: 3446438947</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398827</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398827</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 12 May 2014 14:36:58 GMT</pubDate></item><item><title><![CDATA[Reply to c++ Zyklus mit rekursiven funktionen (Programm stürzt ab) on Mon, 12 May 2014 15:03:18 GMT]]></title><description><![CDATA[<p>size_t ist nach durch deine platform definiert?<br />
x32 ... size_t = 4 bytes<br />
x64 ... size_t = 8 bytes</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2398832</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398832</guid><dc:creator><![CDATA[tommygotschalk]]></dc:creator><pubDate>Mon, 12 May 2014 15:03:18 GMT</pubDate></item><item><title><![CDATA[Reply to c++ Zyklus mit rekursiven funktionen (Programm stürzt ab) on Mon, 12 May 2014 15:05:46 GMT]]></title><description><![CDATA[<p>ja wahrscheinlich.<br />
vielen dank, Du hast mir echt sehr geholfen.<br />
bin grad dabei mir ein tutorial zu strings anzusehen, dan werd ich die codes auch besser nachvollziehen können <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>
]]></description><link>https://www.c-plusplus.net/forum/post/2398835</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2398835</guid><dc:creator><![CDATA[Canchuck]]></dc:creator><pubDate>Mon, 12 May 2014 15:05:46 GMT</pubDate></item></channel></rss>