# Boolean

A Boolean has one of two possible values: `true`

or `false`

. Boolean (logical) operators (*and*, *or*, *not*) take Boolean inputs and make another Boolean value. Comparison operators on other types (numbers, strings) create Boolean values.

These blocks represent the `true`

and `false`

Boolean values, which can plug into anyplace a Boolean value is expected:

```
true;
false;
```

The next three blocks represent the three Boolean (logic) operators:

```
true && false;
true || false;
!true;
```

The next six blocks represent comparison operators that yield a Boolean value. Most comparisons you will do involve numbers:

```
42 == 0;
42 != 0;
42 < 0;
42 > 0;
42 <= 0;
42 >= 0;
```

Boolean values and operators are often used with an if or while statement to determine which code will execute next. For example:

### Functions that return a Boolean

Some functions return a Boolean value, which you can store in a Boolean variable. For example, the following code gets the on/off state of `point (1, 2)`

and stores this in the Boolean variable named `on`

. Then the code clears the screen if `on`

is `true`

:

### Boolean operators

Boolean operators take Boolean inputs and evaluate to a Boolean output:

### Conjunction: `A and B`

`A and B`

evaluates to `true`

if-and-only-if both A and B are true:

```
false && false == false;
false && true == false;
true && false == false;
true && true == true;
```

### Disjunction: `A or B`

`A or B`

evaluates to `true`

if-and-only-if either A is true or B is true:

```
false || false == false;
false || true == true;
true || false == true;
true || true == true;
```

### Negation: `not A`

`not A`

evaluates to the opposite (negation) of A:

```
!false == true;
!true == false;
```

## Example: `AND`

operator

This example turns on LED `3 , 3`

, if LEDs `1 , 1`

and `2 , 2`

are both on:

```
if (led.point(1,1) && led.point(2,2)) {
led.plot(3,3)
}
```

## Example: Comparisons of numbers and strings

When you compare two Numbers, you get a Boolean value, such as the comparison `x < 5`

in the code below:

```
input.onButtonPressed(Button.A, () => {
let x = Math.random(5)
if(x < 5) {
basic.showString("low");
} else {
basic.showString("high");
}
})
```

See the documentation on Numbers for more information on comparing two Numbers.