Berechnung Fließpunktzahl < Algor.+Datenstr. < Theoretische Inform. < Hochschule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 22:47 Sa 19.01.2008 | Autor: | jule3108 |
Aufgabe | Berechnen Sie mit den dezimalen Fließpunktzahlen
F(10; 4; -99; +99 )
[mm] \bruch{13}{7}+20
[/mm]
wobei Sie jede Zahl und nach jeder Rechenoperation runden und optimal mit
round to even runden. Geben Sie das Ergebnis als dezimale Fließpunktzahl
F(10; 2; -99; +99 ) aus. |
Ich habe keine Ahnung wie ich an diese Aufgabe ran gehen soll. Könnte mir jemand einen Ansatzpunkt/ Vorgehen sagen wie ich diese Aufgabe am besten lösen kann?
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 22:18 So 20.01.2008 | Autor: | Gilga |
Ich find die aufgabe auch komisch.
Das einzige was mir einfällt ist aus den gegeben 4 Zahlen die gesuchte Zahl zu berechnen.
z.B. 20 = 10 + 10
.... ??
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 07:25 Mo 21.01.2008 | Autor: | jule3108 |
Nein, dass ist des auf keinen Fall, die Werte in der Klammer nach dem F stellen den Wertebereich der Zahl da, die 10 ist die Basis der Zahl und die 4 bzw. 2 ist die Mantissenlänge. Aber ich weiß einfach nicht was ich bei dieser Aufgabenstellung genau machen muss, hat niemand eine Idee?
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 08:50 Mo 21.01.2008 | Autor: | rainerS |
Hallo!
> Berechnen Sie mit den dezimalen Fließpunktzahlen
> F(10; 4; -99; +99 )
> [mm]\bruch{13}{7}+20[/mm]
> wobei Sie jede Zahl und nach jeder Rechenoperation runden
> und optimal mit
> round to even runden. Geben Sie das Ergebnis als dezimale
> Fließpunktzahl
> F(10; 2; -99; +99 ) aus.
> Ich habe keine Ahnung wie ich an diese Aufgabe ran gehen
> soll. Könnte mir jemand einen Ansatzpunkt/ Vorgehen sagen
> wie ich diese Aufgabe am besten lösen kann?
Du sollst die angegebene Rechnung mittels der dezimalen Fließpunktzahlen berechnen, also erst einmal die Zahlen 13, 7 und 20 in Fließpunktdarstellung schreiben, 13 durch 7 dividieren, runden (round to even), dann 20 addieren, wieder runden. Zum Schluss dann nochmal runden, da die Ausgabe weniger Mantissenstellen hat.
Viele Grüße
Rainer
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 20:01 Mo 21.01.2008 | Autor: | jule3108 |
OK. Ich habe es jetzt folgendermaßen gemacht:
[mm] \bruch{13}{7}=1.8572+20=21.8572=2.1858*10^{1}
[/mm]
-> [mm] 2.18*10^{3}
[/mm]
ist das so richtig?
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 20:46 Mo 21.01.2008 | Autor: | Gilga |
Achso...
Nach welcher Methode rundest du denn da??
Erstmal 13/7=1.857142.... gerundet 1.8571 !
Aber die Mantissenlänge ist 4 dann runden wir auf 1.857.
Ergebnis ist dann 2.187 * 10
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 09:32 Di 22.01.2008 | Autor: | jule3108 |
Hallo, vielen Dank für deine Antwort. Ich hätte aber trotzdem noch Fragen:
1. In der Aufgabenstellung steht man solle optimal round to even runden, was doch heißt, dass ich immer zur nächsten geraden Ziffer runden muss, deswegen mein Ergebnis. Mit der richtigen Mantissenlänge müsste es dann:
13/7= 1.858 + 20 = 21.858=2.186*10 heißen, oder?
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 13:26 Di 22.01.2008 | Autor: | rainerS |
Hallo!
> Hallo, vielen Dank für deine Antwort. Ich hätte aber
> trotzdem noch Fragen:
> 1. In der Aufgabenstellung steht man solle optimal round
> to even runden, was doch heißt, dass ich immer zur nächsten
> geraden Ziffer runden muss, deswegen mein Ergebnis.
"round to even" bezieht sich nur auf den Fall, dass dein Ergebnis genau zwischen den beiden exakten Darstellungen liegt, also zum Beispiel, wenn du vor dem Runden 1.8575000000 heraus hättest. In allen anderen Fällen wird wie üblich auf- oder abgerundet.
> Mit der
> richtigen Mantissenlänge müsste es dann:
> 13/7= 1.858 + 20 = 21.858=2.186*10 heißen, oder?
Abgesehen davon, dass das Zwischenergebnis 1.857 ist, ja.
Allerdings sollst du das Ergebnis dann auf zwei Mantissenstellen genau ausgeben.
Viele Grüße
Rainer
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 23:23 Mo 21.01.2008 | Autor: | rainerS |
Hallo!
Muss die Mantisse nicht zwischen 0.1 und 1 liegen?
Dann sieht es so aus:
[mm]13 = 0.1300*10^2[/mm]
[mm]7=0.7000*10^1[/mm]
[mm]20=0.2000*10^2[/mm]
[mm]\bruch{13}{7} = \bruch{0.1300}{0.7000}*10^{2-1} = 0.185714\ldots*10^1\approx0.1857*10^1[/mm]
[mm] 0.1857*10^1 + 0.2000*10^2 = 0.01857*10^2 + 0.2000*10^2 = (0.01857+0.2000)*10^2 = 0.21857*10^2 \approx 0.2186*10^2 [/mm]
So, und jetzt musst du noch für die Ausgabe auf zwei Mantissenstellen runden.
Viele Grüße
Rainer
|
|
|
|
|
Status: |
(Frage) beantwortet | Datum: | 17:31 Di 22.01.2008 | Autor: | jule3108 |
Vielen Dank für die Ausführliche Antwort. Wenn ich die Zahl auf 2 Mantissenlängen runde bekomme ich: [mm] 0,2*10^1 [/mm] heraus, ist das korrekt oder habe ich wieder falsch gedacht?
|
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 18:57 Di 22.01.2008 | Autor: | Gilga |
Die Form der Mantisse hängt vom Format der Gleitpunktzahl ab.
z.B. ist es oft üblich das Komma nach der ersten Ziffer zu setzen.
Eine führende Null zählt niemals zur Mantissenlänge.
Also=> Falsch, du auf Länge 1 gerundet.
|
|
|
|