genau 2 stellen hinter dem Komma anzeigen
Übersicht

CO2ehemals "SirMO"Betreff: genau 2 stellen hinter dem Komma anzeigen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hallo,
ich wollte mal fragen ob man auch 2 stellen hinter dem Komma anzeigen lassen kann, auch wenn diese z.B.: 1,00 sind und wenn man das nun mit 1,234 addiert, das dann wieder nur zwei stellen angezeigt werden. |
||
mfG, CO²
Sprachen: BlitzMax, C, C++, C#, Java Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti |
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Mit Stringbefehlen geht es auf jeden Fall mal:
BlitzBasic: [AUSKLAPPEN] Local x#=283.4882 hast du das gemeint? mfg Thunder |
||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
CO2ehemals "SirMO" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ok thx
funktioniert leider nicht so wie ich das wollte. also wenn man bei deinem beispiel zu y 343,2344 addiert sind am ende 3 stellen hinter dem komma und nicht nur 2. |
||
mfG, CO²
Sprachen: BlitzMax, C, C++, C#, Java Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti |
- Zuletzt bearbeitet von CO2 am Fr, März 19, 2010 20:46, insgesamt einmal bearbeitet
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
Codearchiv
Das sollte dir mit gewissen änderungen das zurückliefern was du haben willst |
||
Warbseite |
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Marius94 hat Folgendes geschrieben: also wenn man bei deinem beispiel zu y 343,2344 addiert sind am ende 3 stellen hinter dem komma und nicht nur 2.
Natürlich. Das wirst du auch nie "ausschalten" können. Wenn du eine Zahl mit mehr als 2 Kommastellen dazuaddierst wirst du auch mehr bekommen. Du kannst diese Gleichung zu einer Funktion umbauen und sie immer wieder auf deine Zahlen anwenden, nachdem du die Zahl der Kommastellen erhöht hast. BlitzBasic: [AUSKLAPPEN] Local x#=283.4882 mfg Thunder |
||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
CO2ehemals "SirMO" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
leider kann man da nicht mit variablen arbeiten, beispiel:
Code: [AUSKLAPPEN] Function RoundTo# (value#,digit) If digit < Len(Str(value))-Instr(Str(value),".") Local nextvalue = Int(Mid(Str(value),Instr(Str(value),".")+digit+1,1)) If nextvalue > 4 Return Ceil(value*10^digit)/10^digit Else Return Floor(value*10^digit)/10^digit EndIf Else Return value EndIf End Function Global money# = 12000.00 Global moneyprint# = RoundTo#(money#, 2) Print "" + moneyprint + "€" WaitKey() End Dabei kommt folgende Ausgabe: 12000.0€ ich möchte aber, dass 12000.00€ angezeigt wird. @ Thunder ich hab einen kleinen Fehler bei deinem Code gefunden, deine Ausgabe wäre so 656.0 (oder was auch immer mir kommt es auf die nachkommastelle an), da deine funktion nur einen Integer wert zurückliefert, richtig müsste sie also lauten: Komma2#(i#) trotzdem sehr gut, danke hat mir sehr geholfen, nur das nicht 2 nullen hinter dem komma angezeigt werden nervt mich noch. |
||
mfG, CO²
Sprachen: BlitzMax, C, C++, C#, Java Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti |
- Zuletzt bearbeitet von CO2 am Fr, März 19, 2010 21:07, insgesamt einmal bearbeitet
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich glaube, wenn du immer genau 2 Stellen angezeigt bekommen willst, solltest du mit Strings arbeiten. Möglicherweise geht es auch anders, aber mit Strings geht es leichter ![]() Auch meine Funktion wird bei ,00 ein "falsches" Ergebnis liefern. Wenn du sie allerdings so umschreibst, dass sie einen String zurückgibt: BlitzBasic: [AUSKLAPPEN] Function Komma2$(i#) Dann sollte das richtige herauskommen. |
||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
CO2ehemals "SirMO" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
immernoch das problem mit den zwei nullen hinter dem komma
sie zeigt doch 2 nachkommastellen an, allerdings auch nur eine null |
||
mfG, CO²
Sprachen: BlitzMax, C, C++, C#, Java Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti |
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja. Tut mir Leid. Ich habe da was übersehen.
BlitzBasic: [AUSKLAPPEN] Function Komma2$(i#) So müsste die Funktion funktionieren mfg Thunder |
||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ja. Tut mir Leid. Ich habe da was übersehen.
BlitzBasic: [AUSKLAPPEN] Function Komma2$(i#) So müsste die Funktion funktionieren mfg Thunder |
||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
CO2ehemals "SirMO" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
leider immernoch das problem mit den nullen. | ||
mfG, CO²
Sprachen: BlitzMax, C, C++, C#, Java Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti |
![]() |
mpmxyz |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das liegt daran, dass eine Floatvariable nur einen Wert und keine Formatierung speichert.
BlitzBasic: [AUSKLAPPEN] a#=1.00000000000 ;Es ist egal, wie viele Nullen noch kommen. Es ist und bleibt der selbe Wert. Wenn du etwas formatieren möchtest, musst du durchgehend Strings benutzen. mfG mpmxyz |
||
Moin Moin!
Projekte: DBPC CodeCruncher Mandelbrot-Renderer |
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] Function FloatToString$(A#,B%)
Local T$ = Str(A) T$ = Left(T$,Instr(T$,".")+B) If Mid(T$,Instr(T$,".")+1,B) < B While Len(Mid(T$,Instr(T$,".")+1,B)) < B T$ = T$ + "0" Wend EndIf Return T$ End Function Geht ohne Probleme mit den nullen |
||
Warbseite |
CO2ehemals "SirMO" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
also wenn ich das versuche wird 1.00 zu 1.0
achso und wenn wir grad nen thread offen haben wollte ich gleich mal ne ganz spontane frage stellen: wie ändere ich, das nicht schwarz sondern z.b. lila tranzparent angezeigt wird (in bildern)? ![]() |
||
mfG, CO²
Sprachen: BlitzMax, C, C++, C#, Java Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti |
![]() |
Xaymarehemals "Cgamer" |
![]() Antworten mit Zitat ![]() |
---|---|---|
MaskImage![]() Und die funktion funktioniert einwandfrei. Also brauch ich von dir erstmal nen code warum es bei dir ja falsch geht, denn das funktioniert: BlitzBasic: [AUSKLAPPEN] Print 10.00 |
||
Warbseite |
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich nehme an, du wandelst nach der Anwendung der Funktion von CGamer den String wieder in ein Float um und wunderst dich, wieso nur eine Null angezeigt wird. Wenn du den Wert mit mehr nullen Speichern willst musst du Stringvariablen (erkennbar an dem $ nach dem Namen) verwenden. | ||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
![]() |
faeX |
![]() Antworten mit Zitat ![]() |
---|---|---|
Warum so kompliziert???
BlitzBasic: [AUSKLAPPEN]
|
||
CO2ehemals "SirMO" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
wie mache ich denn das, wenn ich anstatt einer gewählten zahl eine variable angebe? | ||
mfG, CO²
Sprachen: BlitzMax, C, C++, C#, Java Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti |
CO2ehemals "SirMO" |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ok ich habs thx für die hilfe ;D | ||
mfG, CO²
Sprachen: BlitzMax, C, C++, C#, Java Hardware: Windows 7 Ultimate 64-Bit, AMX FX-6350 (6x3,9 GHz), 32 GB RAM, Nvidia GeForce GTX 750 Ti |
![]() |
SpionAtom |
![]() Antworten mit Zitat ![]() |
---|---|---|
Dann werfe ich auch ne Anzeigemöglichkeit ins Rennen:
Code: [AUSKLAPPEN] zahl# = 12.34567
Text 0, 0, Int(zahl) + "." + Int(zahl * 10) Mod 10 + Int(zahl * 100) Mod 10 (Und diese Methode zeigt wirklich IMMER 2 Nachkommastellen.) |
||
os: Windows 10 Home cpu: Intel Core i7 6700K 4.00Ghz gpu: NVIDIA GeForce GTX 1080 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group