COBOL - Conditional expressions - General relation conditions



Desenvolvido por DORNELLES Carlos Alberto - Analista de Sistemas - Brasília DF. - cad_cobol@hotmail.com

COBOL - Conditional expressions - General relation conditions
Enterprise COBOL for z/OS, V4.2, Language Reference

Uma condição de relação geral compara dois operandos, um dos quais pode ser um identificador, literal, expressão aritmética ou nome do índice.

operand-1
O assunto da condição de relação.
Pode ser um identificador, literal, identificador de função, expressão aritmética ou nome do índice.

operand-2
O objeto da condição de relação.
Pode ser um identificador, literal, identificador de função, expressão aritmética ou nome do índice.

Um literal alfanumérico pode ser colocado entre parênteses dentro de uma condição de relação.

A condição de relação deve conter pelo menos uma referência a um identificador.

Os operadores relacionais, mostrados na Tabela 1 , especificam o tipo de comparação a ser feita.
Cada operador relacional deve ser precedido e seguido por um espaço.
Os dois caracteres dos operadores relacionais> = e <= não devem ter espaço entre eles.

Tabela 1. Operadores relacionais e seus significados

Operador relacional Pode ser escrito Significado
IS GREATER THAN IS > Maior que
IS NOT GREATER THAN IS NOT > Não maior que
IS LESS THAN IS < Menor que
IS NOT LESS THAN IS NOT < Não menor que
IS EQUAL TO IS = Igual a
IS NOT EQUAL TO IS NOT = Não igual a
IS GREATER THAN OR EQUAL TO IS >= É maior que ou igual a
IS LESS THAN OR EQUAL TO IS <= É menor ou igual a

Em uma condição de relação geral, itens de dados, literais e constantes figurativas da classe alfabética, alfanumérica, DBCS, national e numérica são comparados usando os seguintes tipos de comparação:

Tipo de comparação Significado
Alphanumeric Comparação do valor alfanumérico de caracteres de dois operandos
DBCS Comparação do valor do caractere DBCS de dois operandos
National Comparação do valor de caractere nacional de dois operandos
Numeric Comparação do valor algébrico de dois operandos
Group Comparação do valor de caracteres alfanuméricos de dois operandos, em que um ou ambos os operandos é um item de grupo alfanumérico/td>

A Tabela 2 e a Tabela 3 mostram os pares permitidos para comparações com diferentes tipos de operandos.
O tipo de comparação é indicado na interseção de linha e coluna para comparações permitidas, usando a seguinte chave:

Alph
Comparação de caracteres alfanuméricos (descrito mais detalhadamente em Alphanumeric comparisons - Comparação de caracteres alfanuméricos)
DBCS
Comparação de caracteres DBCS (descrito mais detalhadamente em DBCS comparisons - comparações DBCS)
Nat
Comparação de caracteres nacionais (descrito mais detalhadamente em National comparisons - Comparações nacionais)
Num
Comparação do valor algébrico (descrito mais detalhadamente em Numeric comparisons - Comparações numéricas)
Group
Comparação de caracteres alfanuméricos envolvendo um grupo alfanumérico (descrito mais detalhadamente em Group comparisons - Comparações de grupos)
(Int)
Somente itens inteiros (combinados com o tipo de comparação Alph, Nat, Num ou Group)
Blank
A comparação não é permitida

Para regras e restrições para comparações envolvendo os campos da data do último ano, consulte Comparison of date fields - Comparação dos campos da data.)

Para regras e restrições para comparações envolvendo nomes de índice e itens de dados de índice, consulte Comparison of index-names and index data items - Comparação de nomes de índice e itens de dados de índice.)

Introdução à Tabela 2 : Esta tabela está organizada da seguinte maneira:

  • Na primeira coluna, em "Tipo de item de dados ou literal", cada linha identifica um tipo de operando.
    Em alguns casos, o tipo de operando faz referência a um agrupamento de operandos que possuem propriedades comuns para comparação.
    Por exemplo, a linha para "Itens de caracteres alfanuméricos" faz referência a todos os tipos de operandos listados na célula, da seguinte maneira:
    • Itens de dados da categoria::
      • Alphanumeric - Alfanumérico
      • Alphanumeric edited - Alfanumérico editado
      • Numeric-edited with usage DISPLAY - Editado numérico com o uso DISPLAY
    • Funções alfanuméricas

  • Os títulos de coluna subsequentes se referem a um tipo de operando ou a um agrupamento de operandos.
    Por exemplo, o cabeçalho da coluna "Itens de caracteres alfabéticos e alfanuméricos" refere-se aos tipos de operandos identificados como "Itens de dados alfabéticos" e a todos os tipos de operandos agrupados no operando intitulado "Itens de caracteres alfanuméricos".

  • Os literais são listados como um tipo de operando apenas na primeira coluna.
    Eles não aparecem como títulos de coluna porque literais não podem ser usados como ambos os operandos de uma condição de relação.

Tabela 2. Comparações envolvendo itens de dados e literais

Type of data item or literal Alpha- numeric group items Alphabetic and alpha- numeric character items Zoned decimal items Native numeric items Alpha- numeric floating- point items National character items National decimal items National floating- point items DBCS items
Alphanumeric group item Group Group Group (Int) Group Group Group (Int) Group Group
Alphabetic data items Group Alph Alph (Int) Alph Nat Alph (Int) Nat
Alphanumeric character items:
  • Data items of category:
    • Alphanumeric
    • Alphanumeric- edited
    • Numeric-edited with usage DISPLAY
  • Alphanumeric functions
Group Alph Alph (Int) Alph Nat Alph (Int) Nat
Alphanumeric literals Group Alph Alph (Int) Alph Nat Alph (Int) Nat
Numeric literals Group (Int) Alph (Int) Num Num Num Nat (Int) Num Num
Zoned decimal data items Group (Int) Alph (Int) Num Num Num Nat (Int) Num Num
Native numeric items:
  • Binary
  • Arithmetic expression
  • Internal decimal
  • Internal floating-point

Numeric and integer intrinsic functions

Num Num Num Num Num
Display floating-point items Group Alph Num Num Num Nat Num Num
Floating-point literals Num Num Num Num Num
National character items:
  • Data items of category:
    • National
    • National- edited
    • Numeric- edited with usage NATIONAL
  • National intrinsic functions
  • National groups (treated as elementary item)
Group Nat Nat (Int) Nat Nat Nat (Int) Nat Nat
National literals Group Nat Nat (Int) Nat Nat Nat (Int) Nat Nat
National decimal items Group (Int) Alph (Int) Num Num Num Nat (Int) Num Num
National floating-point items Group Nat Num Num Num Nat Num Num
DBCS data items Group Nat DBCS
DBCS literals Group Nat DBCS

Tabela 3. Comparações envolvendo constantes figurativas

Figurative constant Alpha- numeric group items Alphabetic and alpha- numeric character items Zoned decimal items Native numeric items Alpha- numeric floating point items National character items National decimal items National floating point items DBCS items
ZERO Group Alph Num Num Num Nat Num Num
SPACE Group Alph Alph (Int) Alph at Alph (Int) Nat DBCS

HIGH-VALUE,
LOW-VALUE
QUOTE

Group Alph Alph (Int) Alph Nat Alph (Int) Nat
Symbolic character Group Alph Alph (Int) Alph Nat Alph (Int) Nat
ALL alphanumeric literal Group Alph Alph (Int) Alph Nat Alph (Int) Nat
ALL national literal Group Nat Nat (Int) Nat Nat Nat (Int) Nat Nat
ALL DBCS literal Group Nat DBCS


© Copyright IBM Corp.