Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Formel reursiv machen (https://www.delphipraxis.net/13610-formel-reursiv-machen.html)

theomega 22. Dez 2003 14:01


Formel reursiv machen
 
Hallo Leute,
hätte mal eine Frage an euch Mathe-Asse:
Ich meine hier mal gelesen zu haben, das man jede Formel rekursiv machen kann. Bekommt das einer für diese Formel hier hin:
Code:
25 / (1+0,04e^(0,5x))
Danke schonmal
TheOMgea

choose 22. Dez 2003 14:07

Re: Formel reursiv machen
 
Hallo theomega,

ich kenne diese Aussage in der Form: "Jede iterative Lösung lässt sich auch rekursiv darstellen und umgekehrt."

Du stellst jedoch einen Ausdruck dar und keinen Algorithmus, geschweige denn eine iterative Lösung.
Was genau möchtest Du rekursiv lösen?

theomega 22. Dez 2003 14:13

Re: Formel reursiv machen
 
Oki, gut, dann wird es ein bischen ausführlicher:

Ich habe ein Spiel geschrieben, (DelphiX), auf der von rechts her Teile einfliegen und man den Teilen mit einem Flyer ausweichen muß. Jetzt ist das ganze natürlich öde wenn es immer das gleiche ist, deshalb habe ich gedacht, mann müßte die anzahl der Teile zunehmen lassen. Jetzt habe ich die oben geschriebene Funktion mir überlegt, die, wenn man für x die Zeit einsetzt die Anzahl der Teilchen zurückgibt, die erstellt werden müßen.
Ich habe nur keine Lust, die Zeit noch mitzuzählen, deshalb habe ich gedacht, das müßte auch rekursiv gehen, also ohne Zeit, nur über die Schritte, die mein DXTimer macht.

Versteht das jemand?

Grüße
TO

choose 22. Dez 2003 14:54

Re: Formel reursiv machen
 
Eine rekursive Lösung berechnet solange einen Wert, bis eine Abbruchbedingung eintritt.
Wenn ich Dich richtig verstanden habe, möchtest Du "zwischendurch" Werte "abgreifen" und sie als Berechnungsgrundlage für den Folgewert verwenden. Sofern Du diese Rekursion nicht in einem anderen Ausführungsstrang (Thread) laufen lässt und ihn jedesmal anhältst, bis Du den nächsten Wert verarbeiten kannst (Spiellogik muss nebenher laufen), sehe ich keine Lösung ohne massives "Herumgetrickse" mit Rücksprunadressen oder mit einer Vorberechnung aller nutzbaren Werte bei einem Rekursiven Ansatz...

Die Suche nach "Veränderungen des Funktionswertes innerhalb der Zeit" nennt man auch "Ableitung nach der Zeit". Stichworte hierzu sind Ableitung, Analysis, Kettenregel (wegen e^(0.5*x)).
Trotzdem wärst Du gezwungen, den errechneten Wert an der Stelle des Zeitindexes abzulegen, so oder so muss deshalb eine Information "gemerkt" werden, um den nächsten Schritt zu berechnen.
Welche Variante Dir einfacher erscheint, bleibt Dir überlassen ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:46 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz