0 Daumen
686 Aufrufe

Aufgabe:

Erreicht die iterative Funktion:

$$x=\frac{x+s}{k}$$

die offensichtlich gegen einen Grenzwert läuft, diesen oder nicht.

Den Grenzwert kann man leicht berechnen:

$$lim=\frac{s}{k-1}$$

Problem/Ansatz:

Ich habe diese Funktion programmiert (C++) und da erreicht sie den Limes.

Intuitiv kann das aber nicht sein.

Mein Verdacht ist, dass die Funktion den Limes errecht, weil die Programmiersprache nur eine begrenzte Anzahl Nachkommastellen darstellen kann.

Um dies zu prüfen, bin ich auf eine etwas andere Rechenweise gekommen, die nur mit ganzen Zahlen arbeitet.

Wenn bei einer Division ein Rest bleibt, wird dieser nicht in Nachkommastellen aufgelöst sondern bleibt als Bruch bestehen.

Das ergibt folgende Schreibweise: Q,Z,N   (Q = Quotient, Z = Zähler, N = Nenner)

Das ergibt z.B. für $$\frac{7}{3} = \frac{7,0,1}{3,0,1}=2,1,3$$

Für die iterative Fumktion ergibt sich:

$$x,Z,N=\frac{x,Z,N+s,Z',N'}{k,Z'',N''}$$

Für die Berechnung des Limes ergibt sich dann:

$$lim,Z,N=\frac{s,Z',N'}{k,Z'',N''-1,0,1}$$

Ich habe die vier Grundrechenarten für diese Art der Rechnung programmiert.

Programmiere ich diese iterative Funktion mit der neuen Rechenart, so hält der der Algorithmus zwar nicht da an, wo er bei normaler Rechenweise anhält, aber ob er jemals anhält (den Limes erreicht) kann ich auch nicht sagen, da die ganzen Zahlen, bevor der Limes erreicht wird, so gross werden, dass sie vom Rechner nicht mehr dargestellt werden können.

Als habe ich beschlossen, die Frage mathematisch zu klären.

Das führte mich zu dieser Gleichung:

$$\frac{k^{i}-1}{k^{i}(i-1)}=\frac{q}{s}$$


i = die Anzahl Iterationen

Hier komme ich nicht mehr weiter.

Die Frage ist nun: Ist diese Gleichung nach i auflösbar?

Avatar von

Hallo

 kannst du dagen, was da iteriert wird? etwa 2 oder mehr  Schritte der Iteration?

Gruß lul

Iterirert wird i mal

$$\frac{\frac{\frac{\frac{s}{k}+s}{k}+s}{k}+s}{k}+s.....$$

Das Ganze läuft gegen einen Grenzwert:

$$lim=\frac{s}{k-1}$$


x = 0

Do until x = lim

  x=(x+s)/k

loop


Ich habe das Problem gelöst.

Die Summenformel für den Grenzwert ist:

$$\frac{s(k^{i}-1)}{k^{i}(k-1)}=lim=\frac{s}{k-1}$$

Aufgelöst ergibt das $$\frac{1}{k^{i}}=0$$

oder

$$\frac{1}{0}=k^{i}$$

Damit wird $$k^i$$

unendlich und damit auch i unendlich.

x läuft also gegn einen Grenzwert, erreicht ihn aber nie.

1 Antwort

0 Daumen

Sollte irgendwann der Grenzwert erreicht werden müsste gelten

x(n + 1) = (x(n) + s)/k

s/(k - 1) = (x(n) + s)/k

Ein auflösen nach x(n) ergibt

x(n) = s/(k - 1)

Damit der Grenzwert heraus kommt, muss auch vorher der Grenzwert eingesetzt worden sein.

Der Grenzwert wird also nie erreicht, wenn man mit exakten Zahlen rechnen.

Tja. Das Problem liegt wie du bereits erkannt hast an der Rechengenauigkeit. Da man nur mit einer begrenzten Anzahl an Nachkommastellen rechnet, werden unendlich viele Zahlen halt durch eine dargestellt.

Avatar von 488 k 🚀

Ich habe das Problem gelöst.

Die Summenformel für den Grenzwert ist:
$$\frac{s(k^{i}-1)}{k^{i}(k-1)}=lim=\frac{s}{k-1}$$
Aufgelöst ergibt das $$\frac{1}{k^{i}}=0$$
oder
$$\frac{1}{0}=k^{i}$$
Damit wird $$k^i$$
unendlich und damit auch i unendlich.
x läuft also gegn einen Grenzwert, erreicht ihn aber nie.

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community