Basic Pascal Tutorial/Chapter 3/Boolean Expressions/bg
English · Français · Български · 中文(中国) · 日本語
Булеви изрази
(author: Tao Yue, state: unchanged)
Boolean изразите се използват за сравнение на две стойности и като резултат се получава истина TRUE или лъжа FALSE:
value1 оператор_за_сравнение value2Използват се следните оператори за сравнение:
< по-малко от
> по-голямо от
= равно на
<= по-малко или равно на
>= по-голямо или равно на
<> различно отМожете да присвоявате булеви изрази на булеви променливи. Тук присвояваме израз true на some_bool:
some_bool := 3 < 5;Сложните булеви изрази се формират с помощта на булевите оператори:
not отрицание (~)
and конюкция, логическо умножение (^)
or дизюнкция, логическо събиране (v)
xor изключващо илиNOT е унарен оператор - той се прилага само към една стойност и я инвертира:
- not true = false
- not false = true
AND връща TRUE само ако и двете стойности са TRUE:
- TRUE and FALSE = FALSE
- TRUE and TRUE = TRUE
OR връща TRUE ако поне едната стойност е TRUE:
- TRUE or TRUE = TRUE
- TRUE or FALSE = TRUE
- FALSE or TRUE = TRUE
- FALSE or FALSE = FALSE
XOR връща TRUE ако едната стойност е TRUE а другата е FALSE. По този начин:
- TRUE xor TRUE = FALSE
- TRUE xor FALSE = TRUE
- FALSE xor TRUE = TRUE
- FALSE xor FALSE = FALSE
Когато комбинирате два булеви израза, използвайки сравнения и булеви оператори, бъдете внимателни и използвайте скоби:
(3>5) or (650<1)Това се прави защото булевите оператори имат по-висок приоритет от операторите за сравнение:
| Приоритет | Оператор | Забележка |
|---|---|---|
| 1 | not |
най-висок приоритет |
| 2 | * / div mod and |
|
| 3 | + - or |
|
| 4 | < > <= >= = <> |
най-нисък приоритет |
Следователно 3 > 5 or 650 < 1 ще се изпълни като 3 > (5 or 650) < 1, което е безмислено, защото булевия оператор or работи само с Boolean стойности а не с цели числа.
Булевите оператори (AND, OR, NOT, XOR) може да се ипозват с Boolean променливи по същия начин, както се използват и с булеви изрази.
Когато е възможно, не сравнявайте две реални стойности със знак за равенство. Малките грешки при закръгляването и при представянето на реалните числа могат да доведат до разлика в два иначе математически еквивалентни изрази.
From the Free Pascal wiki, page "Basic Pascal Tutorial/Chapter 3/Boolean Expressions/bg", as it stood on 2022-08-20 after a change by Kai Burghardt, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.