Impressum · Kontakt · Hilfe
Besucher online · Mitglieder



Antwort
 
Themen-Optionen
Alt 26.10.2006, 10:13   Nach oben    #1
Mirod
Turnbeutelvergesser
 
Registriert seit: 18.08.2005
Beiträge: 33
Standard [C] Rundungsproblem

Hallo zusammen,

Ausgangslage:
Ich lese verschiedene Werte aus einer Oracle-Datenbank, einer davon ist im NUMBER-Format in der Datenbank und hat bis zu 2 Nachkommastellen. Ich lese den in eine float Variable temp ein:

Code:
float temp = (float)auswahl[i].riserva_leistung;
Wenn ich nun den Wert dieser Variable temp ausgebe, sieht das so aus:

Code:
printf("\ntemp: %f", temp);
Ausgabe:

Code:
temp: 8861.400391
In der Datenbank ist "eigentlich" der Wert 8861.4, aber das liegt wohl an der Ungenauigkeit von "NUMBER", egal, das ist auch nicht das Problem.

Problem:
Nun möchte ich diesen Betrag der in der Variable "temp" ist, auf 2 Stellen nach dem Komma - mathematisch - runden.
Meine bisherige Vorgehensweise:

Code:
temp = temp * 100;
temp = round(temp);
printf("\ntemp: %f", temp);
Ausgabe:

Code:
886140.000000
Funktioniert soweit auch ganz gut.
Wenn ich diesen neuen Wert jedoch durch 100 Rechne und in die gleiche float-Variable speichern will, passiert etwas, was ich nicht verstehe :

Code:

Code:
temp = temp / 100;
printf("\ntemp: %f", temp);
Ausgabe:

Code:
temp: 8861.399414
Wieso? Ich versteh das nicht, weiss da wer nen Tipp, oder ne andere Möglichkeit zu runden?

Grüsse Mirod
Mirod ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 26.10.2006, 19:38   Nach oben    #2
Artemis
Semantic Web Fanatic
 
Benutzerbild von Artemis
 
Registriert seit: 03.06.2006
Beiträge: 235
Standard

Bin grad auf das hier gestoßen:
http://www.wer-weiss-was.de/theme158/article977423.html

EDIT:

und auf das hier:
http://www.c-plusplus.de/forum/viewt...is-284467.html
__________________
Applikations-Programmierung:
BlitzMax, BlitzPlus

Webentwicklung:
PHP, (X)HTML, CSS, JavaScript, MySQL


Artemis ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 27.10.2006, 09:56   Nach oben    #3
Mirod
Turnbeutelvergesser
 
Registriert seit: 18.08.2005
Beiträge: 33
Standard

Hat sich erledigt, habe nun double-Variablen verwendet, nun funktionierts .
Danke für die Hilfe.
Mirod ist offline  
Add Post to del.icio.usBookmark Post in TechnoratiDiesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Trackbacks are An
Pingbacks are An
Refbacks are Aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[C] Malloc und Realloc Bleistift Sonstige Programmiersprachen 1 08.06.2007 13:58
[C] "Kleines" Problem bei einem einfachen Programm Plankton Sonstige Programmiersprachen 5 28.12.2006 21:15


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:04 Uhr.

Nach oben
Wir nutzen das Zend Framework, vBulletin (vBulletin v3.7.2, Copyright ©2000-2008, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.0.0) und vBSEO.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44