 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
triturus
Anmeldungsdatum: 11.03.2005 Beiträge: 32
|
Verfasst am: 11.03.2005, 01:54 Titel: LEN-Problemchen |
|
|
Weiß jemand, warum das nicht klappt?
Ich will die Zeichenfolge "9e" in 9 und e zerlegen, und zwar so, dass die Zahl 9 natürlich nur 1 Zeichen hat und am Bildschirm ganz links steht. Mit "e" gibt es keine Probleme.
Der folgende Code gibt zwar die Zahl 9 als solche richtig aus, aber für die Länge von "Zahl" immer 4 bzw. es ist immer ein vorangestelltes Leerzeichen dabei, das ich nicht weg bekomme!! Weshalb bitte???
CLS
taste$ = "9e"
k = LEN(taste$):
PRINT k
zahl = VAL((LTRIM$(RTRIM$((MID$(taste$, 1, k - 1))))))
PRINT zahl
PRINT LEN(zahl)
befehl$ = MID$(taste$, k, 1)
PRINT befehl$
Ergebnis:
2
9
4
e
WARUM ?
mfg
triti |
|
Nach oben |
|
 |
Skilltronic

Anmeldungsdatum: 10.09.2004 Beiträge: 1148 Wohnort: Köln
|
Verfasst am: 11.03.2005, 02:30 Titel: |
|
|
Hallo
Du prüfst die Länge der Zahl zahl und nicht die des Strings zahl$. So sollte es gehen:
Code: | CLS
taste$ = "9e"
k = LEN(taste$):
PRINT k
zahl$ = LTRIM$(RTRIM$((MID$(taste$, 1, k - 1)))))
zahl = VAL(zahl$)
PRINT zahl
PRINT LEN(zahl$)
befehl$ = MID$(taste$, k, 1)
PRINT befehl$
|
Ergebnis:
2
9
1
e
Wieviele Stellen eine ganze Zahl grösser als 0 hat, kannst du aber auch ausrechenen:
stellen = FIX(LOG(zahl) / LOG(10)) + 1
Gruss
Skilltronic _________________ Elektronik und QB? www.skilltronics.de ! |
|
Nach oben |
|
 |
triturus
Anmeldungsdatum: 11.03.2005 Beiträge: 32
|
Verfasst am: 11.03.2005, 11:08 Titel: |
|
|
Achso, man kann nur einen String auf Länge prüfen!
Dank schön
Triti |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|