PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Speziellen Ausdruck in Bascom umsetzen



Toranaga
30.06.2006, 22:55
Hi,

da ich es nicht hinbringe, frage ich euch um Hilfe.

Ich habe folgenden Ausdruck:


B=(B=42) OR (B=47) OR (B=92)

da den BASCOM so nicht akzeptiert, habe ich den so umgesetzt:


B_false = 0
B_true = -1
If B = 42 Then H1 = B_true Else H1 = B_false
If B = 47 Then H2 = B_true Else H2 = B_false
If B = 92 Then H3 = B_true Else H3 = B_false
H1 = H1 Or H2
B = H1 Or H3

Ich gehe aber davon aus, das da irgendein Bock drin versteckt ist, nur sehe ich ihn halt nicht.

Erbarmt sich jemand meinereiner?

Vielen Dank im Voraus

cu
Toranaga

PicNick
01.07.2006, 10:54
Is nicht ganz klar, was B am Ende werden soll ? True/false ?


If B = 42 OR B = 47 OR B = 92 THEN
B = 1 '(True)
else
B = 0 '(False)
end if

Vielleicht steh' ich auch auf der Leitung ?

Toranaga
02.07.2006, 01:02
B sollte genau so sein, wie du es in der IF-Abfrage hast.

Weis zwar noch nicht ob es wirklich funktioniert, aber es ist deutlich kürzer und eleganter als meine Lösung. Hatte etwas ähnliches zwar auch probiert, aber die Klammern um das B=42 drum gelassen, so fiel er da auch auf die Nase. BASCOM mag in IFs keine Klammern, hatte ich aber erst heute morgen erfahren.

Ist halt immer schwer fremden Code in einem anderen Dialekt zu transferieren. Bis man das alles verstanden hat, hat man es meist selber schneller geschrieben.

Vielen Dank auf jeden Fall.

cu
Toranaga