Variable auf 2 Kommastellen genau anzeigen

Übersicht BlitzBasic Allgemein

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen

Holzchopf

Meisterpacker

BeitragMi, Jul 21, 2004 14:00
Antworten mit Zitat
Benutzer-Profile anzeigen
Genau! Aber das hab' ich ja hier schon geschrieben...

Holzchopf hat Folgendes geschrieben:
Hmmm...
Blitz tut sich beim Runden sowieso schwer, schaut euch mal das hier an:
Code: [AUSKLAPPEN]

Graphics 800,600,16,2

While Not KeyDown(1)

   Cls

   For a# = s To s+4 Step 0.1
   
      b = ( a + 0.5 ) * 10
      Zahl# = a
      v1 = Int(a)
      v2 = Floor(a+.5)
      v3 = Floor(b/10.0)
      v4 = Str(a+.5)
      If v1 = v2 And v3 = v4 And v1 = v3 Then
         Color 255,255,255
      Else
         Color 255,0,0
      EndIf
      
      Text 0, (a Mod 4) * 140, Zahl
      Text 100, (a Mod 4) * 140, v1
      Text 150, (a Mod 4) * 140, v2
      Text 200, (a Mod 4) * 140, v3
      Text 250, (a Mod 4) * 140, v4
      
   Next

   s = s + 4
   
   WaitKey()

Wend

End


(JA, in den roten Zeilen ist was faul)

So wie's den Anschein hat, kann man in Blitz nur dann genau runden, wenn man String-Funktionen arbeitet (macht sich bei den höheren Zahlen, so ab 30, bemerkbar)...


Ergo klappts nur mit Str( a +.5 ), also mit einer String-Funktion. Abrunden mit Floor() funktioniert auch nicht...[/code]
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

Markus2

BeitragDo, Jul 22, 2004 12:24
Antworten mit Zitat
Benutzer-Profile anzeigen
@Holzchopf

War so gemeint :

Int((2.1*100.0)+0.5)/100.0

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group