0 Daumen
777 Aufrufe

Mit welchem Wert ist die Variable x belegt, wenn die Anweisungen

a=10^6 ; b=10^ (-12) ; u= a + b; v= a-b ; r =(u-v)/b ;

auf einem Computer mit der relativen Computergenauigkeit v= 10^(-16) ausgeführt werden?

Begründung!

Berechnen Sie den Wert von r.


Wenn man das per Hand berechnet erhält man 2, bei Wolfram Alpha aber auch. ich verstehe nicht was man da genau mit der Computergenauigkeit begründen sollen.

Könnt ihr mir da weiterhelfen?


Avatar von

2 Antworten

0 Daumen

"Mit welchem Wert ist die Variable x belegt,"

Das weiß man nicht konkret.

Aber so viel kann man sagen. Die Variable x ist - falls sie schon mit irgendeinem Wert belegt war, bevor du den ganzen Budenzauber mit a, b, u, v und r begonnen hast - immer noch mit dem gleichen Wert belegt, die sie vorher schon hatte.

In deinen ganzen zitierten Rechenvorschriften taucht x nämlich NIE auf und  wird somit auch nicht verändert.

Avatar von 55 k 🚀

Wenn man a+b bzw. a-b rechnen will, addiert bzw. subtrahiert man von a das
10-18-fache von a.

Ich schätze mal, dass der Faktor 10-18 zu klein ist, um bei der relativen Genauigkeit von 10-16 noch von 0 unterscheidbar zu sein.

Ich vermute deshalb, dass sowohl a+b als auch a-b für den Computer einfach nur a ergibt und die Differenz  u-v deshalb 0 wird.

0 Daumen

Mit welchem Wert ist die Variable r belegt, wenn die Anweisungen

a=106 ; b=10-12 ; u= a + b; v= a-b ; r =(u-v)/b gelten?

r =(u-v)/b=((a+b)-(a-b))/b=2

Das Ergebnis ist von a und b unabhängig und daher in jedem Falle exakt.

Avatar von 123 k 🚀

Wie reden hier nicht von einem CAS, was symbolisch rechnet und Gleichungssysteme löst. Dass da exakt 2 rauskommt, weiß ich selbst.

Es geht hier um ein Computerprogramm, das Schritt für Schritt numerische Zwischenergebnisse berechnet und dabei Rundungsfehler begehen kann.

Diese Rundungsfehler haben Auswirkungen auf die nachfolgenden Rechnungen.

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Mathelounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community