Rückgabeparameter

Übersicht BlitzBasic Beginners-Corner

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen

Artemis

BeitragMi, Dez 08, 2004 17:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi bladerunner
ich habe jetzt mal ein kleines beispielproggy geschrieben
kannst ja sagen ob du dir das so gedacht hast:
BlitzBasic: [AUSKLAPPEN]

wert1 = Input(\"1%:\")
wert2 = Input(\"2%:\")
wert3$ = Input(\"3$:\")

Global len1
Global len2
Global len3

w4$ = q1$(wert1,wert2,wert3$)

Print w4$

Print Left(w4$,len1)
Print Mid(w4$,len1+1,len2)
Print Right(w4$,len3)

Function q1$(w1,w2,w3$)
e1$ = w1
e2$ = w2
e3$ = w3$
len1 = Len(e1$)
len2 = Len(e2$)
len3 = Len(e3$)
e4$ = e1$+e2$+e3$
Return e4$
End Function

also melde dich mal!! Very Happy Very Happy

Rallimen

Sieger des 30-EUR-Wettbewerbs

BeitragMi, Dez 08, 2004 18:24
Antworten mit Zitat
Benutzer-Profile anzeigen
Sieht ja schon mal gut aus, bis auf die 3 Globalen Len1 - Len3
die müssen noch verschwinden, da du ja sonst gleich die e1 -e3 global machen kannst !
Dir fehlt noch der richtige Algo um den String zu teilen !

Beispiel:
den ReturnString mit Teiler versehen zB ein $ Zeichen
Du kannst auch verschiedene nehmen was beim Auswerten viel einfacher ist
e4$ = e1$ + "$" + e2$ + "#" + e3$
der ReturnWert sieht dann evt. so aus:
"123§456#Hallo"

mit dem Instr Befehl kannst du dir genau diese speziellen Positionen ermitteln

DollarZeichen = Instr(ReturnString,"$")
wert1 = left (ReturnString,DollarZeichen -1)

Das läßt sich jetzt auch einfacher schreiben ohne Umweg...
wert1 = left (ReturnString,Instr(ReturnString,"$")-1)

das gleiche für den Wert zwischen den Trennzeichen
Wert2 = mid(ReturnString ,DollarZeichen +1 , RautePos -1)

die Stopzeichen sollten mit nichttippbaren chr() gemacht werden damit es keine Probs bei der eingabe gibt!
so, den letzten kannste dann auch mit mid machen, allerdings ohne angabe von zeichenanzahl , dann nimmt der immer den rest des Strings, ist einfacher als mit right
[BB2D | BB3D | BB+]

BladeRunner

Moderator

BeitragMi, Dez 08, 2004 18:44
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich denke Rallimen hat das wesentliche gesagt. Ich würde noch hinzufügen dass Du zwischen den einzelnen Werten auch immer das Gleiche Stopzeichen nehmen kannst, vorausgesetzt du merkst Dir wo das Letzte gefunden wurde (oder du kürzt den String um den schon bearbeiteten Teil.)
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Artemis

BeitragDo, Dez 09, 2004 18:55
Antworten mit Zitat
Benutzer-Profile anzeigen
jo vielen dank rallimen und bladerunner!!
jetzt hab ich endlich das was ich gesucht hab!! Very Happy Very Happy Very Happy Very Happy Very Happy
Very Happy Very Happy Very Happy Very Happy 8) Embarassed 8) Twisted Evil Exclamation Razz Confused

Artemis

BeitragFr, Dez 10, 2004 21:07
Antworten mit Zitat
Benutzer-Profile anzeigen
also das proggy sieht jetzt so aus:
BlitzBasic: [AUSKLAPPEN]

wert1 = Input(\"1%:\")
wert2 = Input(\"2%:\")
wert3$ = Input(\"3$:\")


w4$ = q1$(wert1,wert2,wert3$)

Print w4$

Print Left(w4$,Instr(w4$,\"!\")-1)
Print Mid(w4$,Instr(w4$,\"!\")+1,Instr(w4$,\"§\")-Instr(w4$,\"!\")-1)
Print Mid(w4$,Instr(w4$,\"§\")+1)

Function q1$(w1,w2,w3$)
e1$ = w1
e2$ = w2
e3$ = w3$
e4$ = e1$+\"!\"+e2$+\"§\"+e3$
Return e4$
End Function

Gehe zu Seite Zurück  1, 2

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group