<?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[Algorithmus Vorstellungsgespräch]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich soll bei einem Vorstellunggespräch einen bekannten Algorithmus implementieren.<br />
Er ist iterativ. Welcher Algorithmus würde sich da mal als Übung anbieten ?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/324750/algorithmus-vorstellungsgespräch</link><generator>RSS for Node</generator><lastBuildDate>Wed, 15 Jul 2026 01:44:47 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/324750.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 31 Mar 2014 08:46:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Mon, 31 Mar 2014 08:46:59 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich soll bei einem Vorstellunggespräch einen bekannten Algorithmus implementieren.<br />
Er ist iterativ. Welcher Algorithmus würde sich da mal als Übung anbieten ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2391969</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2391969</guid><dc:creator><![CDATA[blurry333]]></dc:creator><pubDate>Mon, 31 Mar 2014 08:46:59 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Mon, 31 Mar 2014 08:56:19 GMT]]></title><description><![CDATA[<p>Alle Unterforen alphabetisch durchtrollen?</p>
<p>&lt;°))))&gt;&lt;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2391970</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2391970</guid><dc:creator><![CDATA[Caligulaminus]]></dc:creator><pubDate>Mon, 31 Mar 2014 08:56:19 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Mon, 31 Mar 2014 08:56:46 GMT]]></title><description><![CDATA[<p>Binary search würde sich anbieten, aber es kommt stark drauf an, wie schwer es sein muss?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2391971</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2391971</guid><dc:creator><![CDATA[Marthog]]></dc:creator><pubDate>Mon, 31 Mar 2014 08:56:46 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Mon, 31 Mar 2014 09:03:48 GMT]]></title><description><![CDATA[<p>was soll es bringen wenn du einen iterativen algorithmus als &quot;übung&quot; implementierst?</p>
<p>aber bitte: euklidischer algorithmus</p>
<p>edit: was ich mir als durchaus passable übung vorstelle ist das iterative implementieren eines eigentlich rekursiven algorithmuses. gutes beispiel dürfte backtracking sein.</p>
<p>edit 2: grammatik...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2391972</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2391972</guid><dc:creator><![CDATA[Fytch]]></dc:creator><pubDate>Mon, 31 Mar 2014 09:03:48 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Mon, 31 Mar 2014 11:37:06 GMT]]></title><description><![CDATA[<p>Du?<br />
Vorstellungsgespräch?</p>
<p>Ich will nen Mittschnitt <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2391990</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2391990</guid><dc:creator><![CDATA[DocShoe]]></dc:creator><pubDate>Mon, 31 Mar 2014 11:37:06 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Mon, 31 Mar 2014 19:37:12 GMT]]></title><description><![CDATA[<p>DocShoe schrieb:</p>
<blockquote>
<p>Du?<br />
Vorstellungsgespräch?</p>
</blockquote>
<p>Einer muss ja Kaffee holen <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/2392067</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392067</guid><dc:creator><![CDATA[icarus2]]></dc:creator><pubDate>Mon, 31 Mar 2014 19:37:12 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Mon, 31 Mar 2014 19:50:02 GMT]]></title><description><![CDATA[<p>Ich hätte den Algorithmus genommen, der die Ackermann Funktion ausrechnet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392073</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392073</guid><dc:creator><![CDATA[acki]]></dc:creator><pubDate>Mon, 31 Mar 2014 19:50:02 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Mon, 31 Mar 2014 20:27:26 GMT]]></title><description><![CDATA[<p>acki schrieb:</p>
<blockquote>
<p>Ich hätte den Algorithmus genommen, der die Ackermann Funktion ausrechnet.</p>
</blockquote>
<p>Ohne die Laufvariable zu ändern <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/2392078</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392078</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Mon, 31 Mar 2014 20:27:26 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Mon, 31 Mar 2014 20:32:13 GMT]]></title><description><![CDATA[<p>Caligulaminus schrieb:</p>
<blockquote>
<p>&lt;°))))&gt;&lt;</p>
</blockquote>
<p>Was drückt so ein Fisch aus?</p>
<p>icarus2 schrieb:</p>
<blockquote>
<p>Einer muss ja Kaffee holen <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>
</blockquote>
<p>Da werden wir leider auf blurry333 verzichten müssen, bei uns holt sich jeder selber einen Kaffee <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/2392082</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392082</guid><dc:creator><![CDATA[Mechanics]]></dc:creator><pubDate>Mon, 31 Mar 2014 20:32:13 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Mon, 31 Mar 2014 20:35:44 GMT]]></title><description><![CDATA[<p>Mechanics schrieb:</p>
<blockquote>
<p>Caligulaminus schrieb:</p>
<blockquote>
<p>&lt;°))))&gt;&lt;</p>
</blockquote>
<p>Was drückt so ein Fisch aus?</p>
</blockquote>
<p>Bezahlung für Trolle, damit sie einem aus dem Weg gehen?</p>
<blockquote>
<p>[Ackermann iterativ]Ohne die Laufvariable zu ändern</p>
</blockquote>
<p>Ich würd ihn sofort einstellen, wenn er den Scherz erklären kann. Bei Kenntnis seiner Postinghistorie.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392083</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392083</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Mon, 31 Mar 2014 20:35:44 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Mon, 31 Mar 2014 22:37:52 GMT]]></title><description><![CDATA[<p>Bashar schrieb:</p>
<blockquote>
<p>Ich würd ihn sofort einstellen, wenn er den Scherz erklären kann.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392095</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392095</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Mon, 31 Mar 2014 22:37:52 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Tue, 01 Apr 2014 01:45:50 GMT]]></title><description><![CDATA[<p>volkard schrieb:</p>
<blockquote>
<p>Bashar schrieb:</p>
<blockquote>
<p>Ich würd ihn sofort einstellen, wenn er den Scherz erklären kann.</p>
</blockquote>
<p><img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44d.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_up"
      title=":+1:"
      alt="👍"
    /></p>
</blockquote>
<p>Ich kenne zwar die Ackermannfunktion und habe gerade noch mal den Wikipedia-Artikel gelesen, verstehe den Scherz aber trotzdem nicht. Eine Erklärung macht einen Witz zwar häufig weniger witzig ... dieses Risiko könnten wir aber doch mal eingehen <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/2392106</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392106</guid><dc:creator><![CDATA[Unwissender_]]></dc:creator><pubDate>Tue, 01 Apr 2014 01:45:50 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Tue, 01 Apr 2014 07:11:14 GMT]]></title><description><![CDATA[<p>Unwissender_ schrieb:</p>
<blockquote>
<p>Ich kenne zwar die Ackermannfunktion und habe gerade noch mal den Wikipedia-Artikel gelesen, verstehe den Scherz aber trotzdem nicht. Eine Erklärung macht einen Witz zwar häufig weniger witzig ... dieses Risiko könnten wir aber doch mal eingehen <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>
</blockquote>
<p>Die Ackermann-Funktion ist nicht Loop-Berechenbar. Es sind nur Schleifen mit fester Anzahl an Iterationen möglich in der Form:<br />
LOOP k DO prog END</p>
<p>Nur der initiale Wert von k spielt eine Rolle und durch eine Änderung kann die Anzahl der Iterationen nicht verändert werden. Müsste man aber für die Ackermann-Funktion</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392121</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392121</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 01 Apr 2014 07:11:14 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Tue, 01 Apr 2014 07:13:09 GMT]]></title><description><![CDATA[<p>Mechanics schrieb:</p>
<blockquote>
<p>Caligulaminus schrieb:</p>
<blockquote>
<p>&lt;°))))&gt;&lt;</p>
</blockquote>
<p>Was drückt so ein Fisch aus?</p>
</blockquote>
<blockquote>
<p>Häufig werden von Nutzern Troll-Beiträge mit einem ASCII-Art-Fisch, auch Roter Hering genannt, beantwortet (Beispiel: &gt;&lt;((((*&gt; ). Dies soll die anderen Diskussionsteilnehmer dazu auffordern, den Beitrag des mutmaßlichen Trolls entsprechend zu prüfen und ggf. nicht weiter auf dessen Beiträge zu reagieren.</p>
</blockquote>
<p><a href="http://de.wikipedia.org/wiki/Troll_%28Netzkultur%29" rel="nofollow">http://de.wikipedia.org/wiki/Troll_(Netzkultur)</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392122</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392122</guid><dc:creator><![CDATA[[[global:guest]]]]></dc:creator><pubDate>Tue, 01 Apr 2014 07:13:09 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Tue, 01 Apr 2014 22:32:48 GMT]]></title><description><![CDATA[<p>Ich habe die Ackermannfunktion eben iterativ mit Hilfe eines Stacks programmiert (Python):</p>
<pre><code>def ackermann(m, n):
    stack = [m, n]
    counter = 0
    while len(stack) &gt; 1:
        counter += 1
        n = stack.pop()
        m = stack.pop()
        if m == 0:
            stack.append(n + 1)
        elif m &gt; 0 and n == 0:
            stack.append(m-1)
            stack.append(1)
        else:
            stack.append(m-1)
            stack.append(m)
            stack.append(n-1)
    return stack.pop(), counter
</code></pre>
<p>Ich frage mich nun, wie man die Funktion mit for-Schleifen (und ohne Stack) realisiert...vielleicht verstehe ich dann wovon ihr redet <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 />
Würde mich freuen, wenn jemand das mal zeigen könnte. Eine Google-Suche hat mich noch nicht weiter gebracht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392246</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392246</guid><dc:creator><![CDATA[Unwissender_]]></dc:creator><pubDate>Tue, 01 Apr 2014 22:32:48 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Wed, 02 Apr 2014 06:26:55 GMT]]></title><description><![CDATA[<p>es geht nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392271</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392271</guid><dc:creator><![CDATA[otze]]></dc:creator><pubDate>Wed, 02 Apr 2014 06:26:55 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Wed, 02 Apr 2014 10:30:51 GMT]]></title><description><![CDATA[<p>Unwissender_ schrieb:</p>
<blockquote>
<p>Ich habe die Ackermannfunktion eben iterativ mit Hilfe eines Stacks programmiert (Python):</p>
</blockquote>
<p>Iteratives Schummeln mit künstlichem Stack zähle ich als rekursiv.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392307</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392307</guid><dc:creator><![CDATA[volkard]]></dc:creator><pubDate>Wed, 02 Apr 2014 10:30:51 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Wed, 02 Apr 2014 11:38:24 GMT]]></title><description><![CDATA[<p>otze schrieb:</p>
<blockquote>
<p>es geht nicht.</p>
</blockquote>
<p>Wieso geht das nicht? Die Einschränkung, dass eine Schleife eine feste Anzahl von Iterationen hat (wie bei LOOP) gilt doch für bspw. C++ nicht.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/106">@Volkard</a><br />
Ich finde das auch mit dem Stack etwas tricksig, da es sich dabei um eine generische Lösung für das Umwandeln von rekursiven Algorithmen in iterative handelt. Daher auch mein Interesse an einer richtig echt wirklich nicht niemals rekursiven Variante.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392326</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392326</guid><dc:creator><![CDATA[Unwissender_]]></dc:creator><pubDate>Wed, 02 Apr 2014 11:38:24 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Wed, 02 Apr 2014 12:02:47 GMT]]></title><description><![CDATA[<p>Es geht dabei um Berechenbarkeit im Sinne der theoretischen Informatik.</p>
<p>Klar, jede auch nur halbwegs aktuelle Programmiersprache kann auf die Zählvariable in einer For-Schleife (oder dem Sprachenäquivalent) zugreifen und dieses auch ändern (Ist ja technisch kein Problem).</p>
<p>Die Fragestellung dahinter ist aber eine ganz andere:<br />
Turing, Church und Co haben sich damals gefragt: &quot;Was bedeutet eigentlich Berechenbar und was ist berechenbar?&quot;<br />
Und man fing an erste semantisch sauber definierte (theoretischen) Sprachen zu entwickeln. Und eine der Sprachen war halt LOOP.</p>
<p>LOOP konnte ziemlich viel berechnen. Die Einschränkung oblag aber darin, dass von vornerein deterministisch gesagt werden konnte, wie viele Schleifendurchläufe für eine Eingabe X vollzogen würden.<br />
Einfache Beispiele für sowas wären die Normale Addition, Multiplikation, Potenzierung, factorial usw.</p>
<p>Und man sah, es geht sehr viel. Aber die Frage kam danach auf, wo liegen denn die Grenzen. Ist mit Loop alles berechenbar?<br />
Und da kam der Herr Ackermann an und sagte: &quot;Nein, sehet her, diese Funktion ist nicht berechenbar nur mit LOOP alleine.&quot; (Sie wächst schneller als man mit einer LOOP-Schleife berechnen kann).</p>
<p>Dann kamen noch andere Berechenbarkeitsbegriffe, die dann mehr berechnen konnten als LOOP (und Äquivalente wie z.B. Primitive Rekursion). Beispiele sind da µ-Rekursion, WHILE- und GOTO-Programme oder Markov-Algorithmen.</p>
<p>Zusamengefasst wird das unter anderem in der Church'schen These (oder Church Turing These). Ist ganz interessant und sollte jeder Informatiker mal was von gehört haben <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/2392331</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392331</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Wed, 02 Apr 2014 12:02:47 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Wed, 02 Apr 2014 12:19:31 GMT]]></title><description><![CDATA[<p>Da fehlt ein entscheidendes Detail. Ein LOOP-Programm terminiert ja immer, aber es gibt nicht-terminierende Programme, von daher war von Anfang an klar, dass LOOP nicht alles kann. Man könnte nun vermuten, dass jedes Programm, dass für jede Eingabe terminiert, in LOOP geschrieben werden kann. Die Ackermann-Funktion ist das klassische Gegenbeispiel.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/932">@Unwissender</a>: Du hast die Lösung doch schon. Dein Stack ist deine Iterationsvariable (wenn du willst kannst du den Stack auch als Zahl codieren =&gt; Gödelisierung), und du veränderst sie in jedem Schleifendurchlauf. Was du nicht tust ist sie einfach nur &quot;hochzuzählen&quot;. Deine Implementation ist ein klassisches WHILE-Programm. Und besser geht es nicht, aber man kann eine Unmöglichkeit ja nicht durch Angabe eines Beispiels zeigen, sondern nur durch einen universellen Beweis. Wie Skym0sh0 schon sagte, beruht der darauf, dass eine LOOP-berechenbare Funktion ein maximales Wachstum hat, das von der Ackermann-Funktion übertroffen wird.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392337</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392337</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Wed, 02 Apr 2014 12:19:31 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Wed, 02 Apr 2014 12:36:00 GMT]]></title><description><![CDATA[<p>Bashar schrieb:</p>
<blockquote>
<p>Da fehlt ein entscheidendes Detail. Ein LOOP-Programm terminiert ja immer, aber es gibt nicht-terminierende Programme, von daher war von Anfang an klar, dass LOOP nicht alles kann. Man könnte nun vermuten, dass jedes Programm, dass für jede Eingabe terminiert, in LOOP geschrieben werden kann. Die Ackermann-Funktion ist das klassische Gegenbeispiel.</p>
</blockquote>
<p>Oh shit, ja da hast du Recht <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="😉"
    /><br />
Total vergessen. Zum Glück ist das hier keine Prüfung...</p>
<p>Aber wo wir grad bei einem halbwegs theoretischen Thema sind (blurrys OP wird ja nicht ernst weiter verfolgt). Wie kann ich zeigen/beweisen/begründen, dass eine Sprache turingvollständig ist - also alles berechenbare auch berechnen kann?<br />
Ich denke mal nicht, dass Beispiele für WHILE- und LOOP- Berechenbarkeit reichen, oder?!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392342</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392342</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Wed, 02 Apr 2014 12:36:00 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Wed, 02 Apr 2014 12:40:01 GMT]]></title><description><![CDATA[<p>Skym0sh0 schrieb:</p>
<blockquote>
<p>Wie kann ich zeigen/beweisen/begründen, dass eine Sprache turingvollständig ist - also alles berechenbare auch berechnen kann?</p>
</blockquote>
<p>Kannst du das nicht tun, indem du sie auf eine Turingmaschine abbildest?</p>
<p>Wenn wir annehmen können, dass Turingmaschinen alles berechnen können und deine Sprache als Turingmaschine funktionieren kann, können wir doch den entsprechenden Schluss ziehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392344</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392344</guid><dc:creator><![CDATA[Alans Vermächtnis]]></dc:creator><pubDate>Wed, 02 Apr 2014 12:40:01 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Wed, 02 Apr 2014 12:41:07 GMT]]></title><description><![CDATA[<p>Skym0sh0 schrieb:</p>
<blockquote>
<p>Aber wo wir grad bei einem halbwegs theoretischen Thema sind (blurrys OP wird ja nicht ernst weiter verfolgt). Wie kann ich zeigen/beweisen/begründen, dass eine Sprache turingvollständig ist - also alles berechenbare auch berechnen kann?</p>
</blockquote>
<p>Durch Simulation, d.h. durch Implementation einer Turingmaschine.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392346</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392346</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Wed, 02 Apr 2014 12:41:07 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Wed, 02 Apr 2014 12:41:41 GMT]]></title><description><![CDATA[<p>Ok, ich frage konkreter.<br />
Mir geht es weniger um den formalen, universellen Beweis, sondern ich möchte einem Kollegen klar machen, dass die Templates (und damit das Typsystem) von C++ turingvollständig sind.</p>
<p>Nur wie?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392347</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392347</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Wed, 02 Apr 2014 12:41:41 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Wed, 02 Apr 2014 12:45:42 GMT]]></title><description><![CDATA[<p>Skym0sh0 schrieb:</p>
<blockquote>
<p>Ok, ich frage konkreter.<br />
Mir geht es weniger um den formalen, universellen Beweis, sondern ich möchte einem Kollegen klar machen, dass die Templates (und damit das Typsystem) von C++ turingvollständig sind.</p>
<p>Nur wie?</p>
</blockquote>
<p>Und dir muss ich Beweise, dass das Typesystem im C++ nicht turingvollständig ist, weil ein Template kein Type ist, sonder nur ihre Instanzierung.</p>
<p>Implementiere eine Funktion als Template?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2392349</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392349</guid><dc:creator><![CDATA[Zeus]]></dc:creator><pubDate>Wed, 02 Apr 2014 12:45:42 GMT</pubDate></item><item><title><![CDATA[Reply to Algorithmus Vorstellungsgespräch on Wed, 02 Apr 2014 12:58:44 GMT]]></title><description><![CDATA[<p>Ich spreche von sowas hier:</p>
<pre><code>#include &lt;iostream&gt;

int ack(unsigned int n, unsigned int m)
{
	if ( n == 0 )
		return m + 1;
	else if ( m == 0 )
		return ack(n - 1, 1);
	else
		return ack(n - 1, ack(n, m - 1));
}

template&lt;unsigned int N, unsigned int M&gt;
struct Ack
{
	static const unsigned int value = Ack&lt;N - 1, Ack&lt;N, M - 1&gt;::value&gt;::value;
};

template&lt;unsigned int M&gt;
struct Ack&lt;0, M&gt;
{
	static const unsigned int value = M + 1;
};

template&lt;unsigned int N&gt;
struct Ack&lt;N, 0&gt;
{
	static const unsigned int value = Ack&lt;N-1, 1&gt;::value;
};

int main()
{
	const unsigned int N = 3;
	const unsigned int M = 4;

	std::cout &lt;&lt; &quot;Ack(&quot; &lt;&lt; N &lt;&lt; &quot;, &quot; &lt;&lt; M &lt;&lt; &quot;) = &quot; &lt;&lt; ack(N, M) &lt;&lt; std::endl; // 125
	std::cout &lt;&lt; &quot;Ack&lt;&quot; &lt;&lt; N &lt;&lt; &quot;, &quot; &lt;&lt; M &lt;&lt; &quot;&gt;::value = &quot; &lt;&lt; Ack&lt;N, M&gt;::value &lt;&lt; std::endl; // 125
	return 0x0;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2392351</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2392351</guid><dc:creator><![CDATA[Skym0sh0]]></dc:creator><pubDate>Wed, 02 Apr 2014 12:58:44 GMT</pubDate></item></channel></rss>