GLBasic forum

Other languages => GLBasic - de => Topic started by: WPShadow on 2007-Jan-11

Title: Zahlen runden
Post by: WPShadow on 2007-Jan-11
Hi!

Wie runde ich Zahlen am Besten? Habe diesen Weg versucht:
Code (glbasic) Select
posx = 255

x_lang = LEN(posx)

DEC posx, MID$("0", x_lang, 1)
Funktioniert übrigens nicht... =/

Mein Versuch war bzw. ist, die letzte Stelle auf 0 zu setzen. Danach wäre ein weiterer Schritt gewesen, die Koordinaten anzunähern, d.h. wenn näher an 240 dann 240 ansonsten 220. Ich versuche einen Raster aufzubauen, da das Problem...

Hat wer 'ne Idee? Ich gebe es für heute nämlcih auf und gehe schlafen...

GLG

W.
Title: Zahlen runden
Post by: Kitty Hello on 2007-Jan-11
Ein Raster macht man so:

Code (glbasic) Select
raster = 32
WHILE TRUE
   MOUSESTATE mx, my, b1, b2
   x = INTEGER(mx / raster)
   y = INTEGER(my / raster)
   PRINT "M", mx, my
   PRINT "R", x, y
   SHOWSCREEN
WEND
Runden von Zahlen (also .5 = 1, .4445 = 0) macht man so:
Code (glbasic) Select
rund = INTEGER(eckig + .5)Runden auf 2 Stellen macht man so:
Code (glbasic) Select
FUNCTION Round: number, num_dec
LOCAL p
   p=POW(10, num_dec)
   RETURN INTEGER(number*p + .5) / p
ENDFUNCTION
Wenn Du's nur als Text schreiben willst:
Code (glbasic) Select
  text$ = FORMAT$(0, 2, number)