Page tree
Skip to end of metadata
Go to start of metadata

Retorna o valor absoluto (independente do sinal) de uma expressão numérica.

Sintaxe

Abs( < nExp > )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

nExp

numérico

Indica a expressão que será avaliada.

X

 

Retorno

Nome

Tipo

Descrição

nRet

numérico

Retorna um número que representa o valor absoluto da expressão informada. O valor será um número positivo ou zero.

Observações

Esta função permite, por exemplo, obter a diferença entre dois números como um valor positivo sem saber com antecedência qual dos dois é o maior.

Normalmente, essa função é definida nos termos de seu parâmetro como:

Se x >= 0 
  Abs( x ) retorna x;
caso contrário,
  Abs( x ) retorna -x.

Exemplos

Exemplo 1
user function abs1()
  Local nPessoas := 20
  Local nLugares := 18
  
  if nPessoas < nLugares
    MsgInfo( "Existem " + cValToChar( nLugares - nPessoas ) + " disponíveis" )
  else
    MsgStop( "Existem " + cValToChar( Abs( nLugares - nPessoas ) ) + " faltando" )
  endif
return
Exemplo 2
user function abs2()
  Local nValue := -123.45
  conout( Abs( nValue ) ) // Resultado: 123.45
return

Resultado do Exemplo

Abrangência

Advanced Protheus 6.09, Advanced Protheus 7.10, Microsiga Protheus 8.11, Protheus 10

 

  • No labels