Ich sag auch nochmal kurz was dazu ...
Delphi selber kennt kein Plus/Minus.
Also,
A in B±C
entsprich dann
(A >= B - C) or (a <= B + C)
, vorausgesetzt C ist im positiven Bereich, oder 0,
oder man sorgt dafür, daß C immer Positiv ist (z.B. mit ABS).
Nun aber zu deinem Problem:
Delphi-Quellcode:
Var MeanValue, lHigh, lLow, lToleranz: Irgendwas;
If (MeanValue >= lLow - ABS(lToleranz))
and (MeanValue <= lLow + ABS(lToleranz)) Then
// MeanValue ist im Low-Bereich
If (MeanValue >= lHigh - ABS(lToleranz))
and (MeanValue <= lHigh + ABS(lToleranz)) Then
// MeanValue ist im High-Bereich
If (lHigh - ABS(lToleranz))
- (lLow + ABS(lToleranz) <= lToleranz Then
// High/Low-Abstand kleiner/gleich lToleranz
und zusammen ergibt das dann
Delphi-Quellcode:
If (lLow < lHigh)
and (((MeanValue >= lLow - ABS(lToleranz))
and (MeanValue <= lLow + ABS(lToleranz)))
or ((MeanValue >= lHigh - ABS(lToleranz))
and (MeanValue <= lHigh + ABS(lToleranz))))
and (lHigh - lLow <= 3 * ABS(lToleranz)) Then
// alles OK
"(lLow < lHigh) and" kannst du auch weglassen ... ist ja nur da, um sicherzugehen, das High auch wirklich größer als Low ist ...