# Logical "OR"

The logical "OR" (operator ||) means that at least one among a few conditions is fulfilled. Similar to the operator &&, the logical "OR" accepts a few arguments of bool (conditional) type and returns true or false. We can easily guess that we obtain a value true every time when at least one of the arguments has a true value. This is shown at the truth table below:

a b a || b
true
true
false
false
true
false
true
false
true
true
true
false

Typical example of the logic of this operator is the following: At school the teacher says: "John or Peter should clean the board". To fulfill this condition (to clean the board), it is possible either just for John to clean it, or just for Peter to clean it, or both of them to do it together.

## Video: Logical "OR"

Watch this video to learn how to use logical "OR" in programming: https://youtu.be/e6i-2E66RNU.

## How the || Operator Works?

We have already learned what the logical"OR" represents. But how is it actually being achieved? Just like with the logical "AND", the program checks from left to right the arguments that are given. In order to obtain true from the expression, it is necessary for just one argument to have a true value. Respectively, the checking continues until an argument with such value is met or until the arguments are over.

Here is one example of the || operator in action:

bool a = false;
bool b = true;
bool c = false;
bool d = true;
bool result = a || b || c || d;
// true (as c and d are not being checked)


The programs checks a, accepts that it has a value false and continues. Reaching b, it understands that it has a true value and the whole expression is calculated as true, without having to check c or d, because their values wouldn't change the result of the expression.

## Example: Fruit or Vegetable

Let's check whether a given product is a fruit or a vegetable. The "fruits" are: banana, apple, kiwi, cherry, lemon and grapes. The "vegetables" are: tomato, cucumber, pepper and carrot. Everything else is "unknown".

Input Output
banana
tomato
java
fruit
vegetable
unknown

### Solution

We have to use a few conditional statements with logical "OR" (||):