Die Mathe-Redaktion - 23.01.2020 23:26 - Registrieren/Login
Auswahl
ListenpunktHome
ListenpunktAktuell und Interessant ai
ListenpunktArtikelübersicht/-suche
ListenpunktAlle Links / Mathe-Links
ListenpunktFach- & Sachbücher
ListenpunktMitglieder / Karte / Top 15
ListenpunktRegistrieren/Login
ListenpunktArbeitsgruppen
Listenpunkt? im neuen Schwätz
ListenpunktWerde Mathe-Millionär!
ListenpunktAward-Abstimmung ab 1.1.
ListenpunktFormeleditor fedgeo
Schwarzes Brett
Aktion im Forum
Suche
Stichwortsuche in Artikeln und Links von Matheplanet
Suchen im Forum
Suchtipps

Bücher
Englische Bücher
Software
Suchbegriffe:
Mathematik bei amazon
Naturwissenschaft & Technik
In Partnerschaft mit Amazon.de
Kontakt
Mail an Matroid
[Keine Übungsaufgaben!]
Impressum

Bitte beachten Sie unsere Nutzungsbedingungen, die Distanzierung, unsere Datenschutzerklärung und
die Forumregeln.

Sie können Mitglied werden. Mitglieder können den Matheplanet-Newsletter bestellen, der etwa alle 2 Monate erscheint.

Der Newsletter Okt. 2017

Für Mitglieder
Mathematisch für Anfänger
Wer ist Online
Aktuell sind 527 Gäste und 15 Mitglieder online.

Sie können Mitglied werden:
Klick hier.

Über Matheplanet
 
Zum letzten Themenfilter: Themenfilter:
Matroids Matheplanet Forum Index
Moderiert von Bilbo
Theoretische Informatik » Berechenbarkeitstheorie » rekursive Funktionen
Druckversion
Druckversion
Antworten
Antworten
Autor
Universität/Hochschule rekursive Funktionen
Markai
Aktiv Letzter Besuch: im letzten Quartal
Dabei seit: 01.06.2019
Mitteilungen: 24
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Themenstart: 2019-12-09


Einen schönen guten Abend,
ich sitze gerade vor ein paar rekursiven Funktionen und verstehe nicht, wie man diese hier berechnet.

$$\begin{array}{l}{ f ac(x)=1}  \\ { f ac(x+1)=\operatorname{mult}(f ac(x), s(x))=\operatorname{mult}\left(i d_{2}^{2}\left(x, f ac(x)), s\left(i d_{1}^{2}(x, f ac(x))\right)\right)\right.}\end{array}
$$
Wenn ich z.b

fac(3) berechnen möchte, wie würde das funktionieren?
So hier ja nicht:

$
fac(3+1) = fac(4) = mult(id_{2}^{2}(3,fac(3)),s(i d_{2}^{1}(3,fac(3))))
$
ja und dies wäre nun eine Endlosschleife.



Wahlurne Für Markai bei den Matheplanet-Awards stimmen
  Profil  Quote  Link auf diesen Beitrag Link
ligning
Senior Letzter Besuch: in der letzten Woche
Dabei seit: 07.12.2014
Mitteilungen: 2879
Aus: Berlin
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.1, eingetragen 2019-12-09


Wieso ist das eine "Endlosschleife"?


-----------------
⊗ ⊗ ⊗



Wahlurne Für ligning bei den Matheplanet-Awards stimmen
  Profil  Quote  Link auf diesen Beitrag Link
Triceratops
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 28.04.2016
Mitteilungen: 4260
Aus: Berlin
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.2, eingetragen 2019-12-09


Um fac(3) zu berechnen, beginnt man mit fac(3) = mult(fac(2),3) (nicht mit fac(4)).



  Profil  Quote  Link auf diesen Beitrag Link
Markai
Aktiv Letzter Besuch: im letzten Quartal
Dabei seit: 01.06.2019
Mitteilungen: 24
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.3, vom Themenstarter, eingetragen 2019-12-09


@Triceratops Aber dort steht doch fac(x+1)

@ligning Weil ich ja immer wieder fac(3) also fac(3+1) erzeuge, es nimmt nirgendwo ab.
Normalerweise hat man ja etwas wie mult(x,y) wobei x nach jeden Aufruf reduziert wird.



Wahlurne Für Markai bei den Matheplanet-Awards stimmen
  Profil  Quote  Link auf diesen Beitrag Link
Triceratops
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 28.04.2016
Mitteilungen: 4260
Aus: Berlin
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.4, eingetragen 2019-12-09


2019-12-09 21:35 - Markai in Beitrag No. 3 schreibt:
@Triceratops Aber dort steht doch fac(x+1)

Das bedeutet also, dass du x=2 setzen musst, um fac(3) auszurechnen.



  Profil  Quote  Link auf diesen Beitrag Link
Markai
Aktiv Letzter Besuch: im letzten Quartal
Dabei seit: 01.06.2019
Mitteilungen: 24
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.5, vom Themenstarter, eingetragen 2019-12-09


Also ich muss x nach jeden Aufruf reduzieren?, oder wie habe ich das zu verstehen?



Wahlurne Für Markai bei den Matheplanet-Awards stimmen
  Profil  Quote  Link auf diesen Beitrag Link
Markai
Aktiv Letzter Besuch: im letzten Quartal
Dabei seit: 01.06.2019
Mitteilungen: 24
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.6, vom Themenstarter, eingetragen 2019-12-09


Vlt so hier :
$
fac(2+1) = mult(id_{2}^{2}(3,fac(3)),s(i d_{2}^{1}(3,fac(3)))) \\
         = mult(id_{2}^{2}(3,1),s(i d_{2}^{1}(3,1))) \\
         = mult(1,s(3)) = mult(1,4) = 4
$

Klappt auch nicht



Wahlurne Für Markai bei den Matheplanet-Awards stimmen
  Profil  Quote  Link auf diesen Beitrag Link
Triceratops
Aktiv Letzter Besuch: in der letzten Woche
Dabei seit: 28.04.2016
Mitteilungen: 4260
Aus: Berlin
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag  Beitrag No.7, eingetragen 2019-12-09


Zunächst einmal musst du das ohne den (unnötigen) Formalismus verstehen. Es gilt fac(n+1) = fac(n) * (n+1), oder anders gesagt fac(n) = fac(n-1) * n.

Du kannst also fac(n) rekursiv berechnen. Die "Pünktchenschreibweise" ist fac(n) = n * (n-1) * ... * 2 * 1.

Zum Beispiel ist also fac(3) = 3 * 2 * 1 = 6.

In deiner Rechnung ist bereits das erste Gleichheitszeichen falsch. Du scheinst von fac(n) = fac(n) * n auszugehen, was nicht richtig ist.



  Profil  Quote  Link auf diesen Beitrag Link
Markai hat die Antworten auf ihre/seine Frage gesehen.
Neues Thema [Neues Thema] Antworten [Antworten]    Druckversion [Druckversion]

 


Wechsel in ein anderes Forum:
 Suchen    
 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2019 by Matroids Matheplanet
This web site was made with PHP-Nuke, a web portal system written in PHP. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]