# Tcl - Relational Operators

Following table shows all the relational operators supported by Tcl language. Assume variable A holds 10 and variable B holds 20, then −

Operator Description Example
== Checks if the values of two operands are equal or not, if yes then condition becomes true. (A == B) is not true.
!= Checks if the values of two operands are equal or not, if values are not equal then condition becomes true. (A != B) is true.
> Checks if the value of left operand is greater than the value of right operand, if yes then condition becomes true. (A > B) is not true.
< Checks if the value of left operand is less than the value of right operand, if yes then condition becomes true. (A < B) is true.
>= Checks if the value of left operand is greater than or equal to the value of right operand, if yes then condition becomes true. (A >= B) is not true.
<= Checks if the value of left operand is less than or equal to the value of right operand, if yes then condition becomes true. (A <= B) is true.

## Example

Try the following example to understand all the relational operators available in Tcl language −

```#!/usr/bin/tclsh

set a 21
set b 10

if { \$a == \$b } {
puts "Line 1 - a is equal to b\n"
} else {
puts "Line 1 - a is not equal to b\n"
}
if { \$a < \$b } {
puts "Line 2 - a is less than b\n"
} else {
puts "Line 2 - a is not less than b\n"
}
if { \$a > \$b } {
puts "Line 3 - a is greater than b\n"
} else {
puts "Line 3 - a is not greater than b\n"
}
# Lets change value of a and b
set a 5
set b 20
if { \$a <= \$b } {
puts "Line 4 - a is either less than or equal to  b\n"
}
if { \$b >= \$a } {
puts "Line 5 - b is either greater than  or equal to a\n"
}
```

When you compile and execute the above program it produces the following result −

```Line 1 - a is not equal to b

Line 2 - a is not less than b

Line 3 - a is greater than b

Line 4 - a is either less than or equal to  b

Line 5 - b is either greater than  or equal to a
```
tcl_operators.htm