PureBaisc ist nicht dafür gedach AussagenLogik in einer Variable zu speichern.
Wenn das so wären (was vllt bei NOT geht) dann muss auch sowas gehen:
statt so:
Code:
A = 1
B = 2
If A = B
Debug "WAHR"
Else
Debug "FALSCH"
EndIf
kann ich die Aussage A = B auch als Variable speichern:
Code:
A = 1
B = 2
C = (A=B)
If C
Debug "WAHR, weil c="+Str(C)
Else
Debug "FALSCH"
EndIf
Aber das versteht PB nicht, für PB wird (A=B) nicht als Aussage aufgewerte, sonden einfach C = A gesetzt.
Damit ist C = 2 und nicht FALSE wie in der aussagenlogik.
Deswegen Aussagen immer mit IF auswerten und dann daraufhin eine Variable setzen:
Code:
A = 1
B = 2
If A = B : C = #True : Else : C = #False : EndIf
If C
Debug "WAHR"
Else
Debug "FALSCH"
EndIf
Wenn dir das immer zu "nervig" ist schreib n Macro:
Code:
Macro Wahrheitswert(Aussage, Wert)
If Aussage : Wert = #True : Else : Wert = #False : EndIf
EndMacro
Dann ist C mit sicherheit 1 oder 0
Code:
Macro Wahrheitswert(Aussage, Wert)
If Aussage : Wert = #True : Else : Wert = #False : EndIf
EndMacro
A = 1
B = 1
Wahrheitswert(A=B, C)
Debug C