Hallo,
ich habe ein Problem, bei dem mir ein versierterer BASCOM-Programmierer vielleicht weiterhelfen kann:
Bei dem beigefügten Code sollen Distanzwerte in Metern oder Kilometern ausgegeben werden. Die Eingangsdaten liegen als Meter in der Variablen "DIST" vor. Bei Werten ab 1000 folgt eine Teilung durch den Faktor 1000 und die Anzeige in Km.
Das Ganze klappt aber nur bis zu 999Km. Wie kann ich nun bewirken, dass ein Distanzwert von z.b. 1000km nicht als 1E3km ausgegeben wird?

Als Notlösung dagegen fällt mir zur Zeit nur ein, das Ergebnis in einen String zu wandeln und dort entsprechend zu manipulieren aber vielleicht gibt es auch elegantere Lösungen!!??

Über Antworten würde ich mich freuen.

Klaus


Code:
$regfile = "m32def.dat"
$crystal = 16000000
$lib "double.lbx"
$hwstack = 32
$swstack = 32
$framesize = 96

$sim

Dim Dist As Double
Dim Einh As String * 2

'Dist = 999
'Dist = 1000
'Dist = 999999
Dist = 1000000

If Dist < 1000 Then Einh = "m"
If Dist => 1000 Then Einh = "Km"
If Dist => 1000 Then Dist = Dist / 1000

Print "Distanz = " ; Dist ; Einh

End