Fortran - Operadores Relacionais

A tabela a seguir mostra todos os operadores relacionais suportados pelo Fortran. Assumir variávelA contém 10 e variável B contém 20, então -

Operador Equivalente Descrição Exemplo
== .eq. Verifica se os valores dos dois operandos são iguais ou não, se sim a condição torna-se verdadeira. (A == B) não é verdade.
/ = .ne. Verifica se os valores de dois operandos são iguais ou não; se os valores não são iguais, a condição se torna verdadeira. (A! = B) é verdade.
> .gt. Verifica se o valor do operando esquerdo é maior que o valor do operando direito, se sim, a condição torna-se verdadeira. (A> B) não é verdade.
< .lt. Verifica se o valor do operando esquerdo é menor que o valor do operando direito; se sim, a condição torna-se verdadeira. (A <B) é verdade.
> = .ge. Verifica se o valor do operando esquerdo é maior ou igual ao valor do operando direito, se sim a condição torna-se verdadeira. (A> = B) não é verdade.
<= .le. Verifica se o valor do operando esquerdo é menor ou igual ao valor do operando direito, se sim a condição torna-se verdadeira. (A <= B) é verdadeiro.

Exemplo

Tente o exemplo a seguir para entender todos os operadores lógicos disponíveis no Fortran -

! this program checks relational operators
implicit none  

   ! variable declaration
   integer :: a, b
   
   ! assigning values 
   a = 10   
   b = 20
   
   if (a .eq. b) then
      print *, "Line 1 - a is equal to b"
   else
      print *, "Line 1 - a is not equal to b"
   end if

   if (a > b) then
      print *, "Line 2 - a is greater than b"
   else
      print *, "Line 2 - a is less than b"
   end if
   
   if (a <= b) then
      print *, "Line 3 - a is less than or equal to b"
   else
      print *, "Line 3 - a is greater than b"
   end if
   
   a = 20   
   b = 20
   
   if (a .eq. b) then
      print *, "Line 4 - a is equal to b"
   else
      print *, "Line 4 - a is not equal to b"
   end if
end

Quando você compila e executa o programa acima, ele produz o seguinte resultado -

Line 1 - a is not equal to b
Line 2 - a is less than b
Line 3 - a is less than or equal to b
Line 4 - a is equal to b