Você está na página 1de 2

Trabalhando com Nmeros

* Salve Abapers, vamos conversar hoje sobre comandos que ajudam muit o * a gente quando estamos trabalhando com valores e nmeros, so todos * comandos simples, e como sempre feito pelo Blog, vou explicar e dar * pelomenos um exemplo... *&--------------------------------------------------------------------* REPORT z_work_with_numbers. * Primeiro vamos declarar as variveis que vamos trabalhar... DATA : v_int_pos TYPE i VALUE '5', v_int_zero TYPE i VALUE '0', v_int_neg TYPE i VALUE '-5', v_dec_pos TYPE p DECIMALS 2 VALUE '1234.56', v_dec_neg TYPE p DECIMALS 2 VALUE '-1234.89', v_string TYPE string VALUE 'a1bcde2fg3hij5lmn78z'. * Variveis para tratativas numricas DATA : v_sign TYPE i, v_trunc TYPE i, v_frac TYPE p DECIMALS 2, v_sqrt TYPE p DECIMALS 2, v_sqrt_f TYPE f, v_mod TYPE i, v_div TYPE i . * Variveis para tratativas alfanumericos. DATA : v_strlen TYPE i .

BREAK-POINT. * SIGN - Esse comando * Varialvel > * Varialvel = * Varialvel <

informa o sinal do valor, nas condies abaixo, 0 = 1, 0 = 0, 0 = -1.

v_sign = SIGN( v_int_pos ) . v_sign = SIGN( v_int_zero ) . v_sign = SIGN( v_int_neg ) .

BREAK-POINT. * TRUNC Esse comando retorna a parte inteira de um nmero fracionado.


v_trunc = TRUNC( v_dec_pos ). v_trunc = TRUNC( v_dec_neg ).

BREAK-POINT. * FRAC - Esse comando retorna a parte fracionada do nmero.


v_frac = FRAC( v_dec_pos ). v_frac = FRAC( v_dec_neg ). v_frac = FRAC( v_int_pos ).

BREAK-POINT. * SQRT Raiz Quadrada, de um nmero positivo. Se voc usar numero negativo el e * vai dar Dump.
v_sqrt

= SQRT( v_int_pos ).

v_sqrt_f = SQRT( v_int_pos ).

BREAK-POINT. * DIV - informa o numero exato de uma diviso. * MOD - Informa o saldo de uma diviso.
v_div = 13 DIV 4. v_mod = 13 MOD 4.

BREAK-POINT. * STRLEN Esse comando retorna a quantidade de caracteres que tem a varivel, * esse comando funciona para tipos especificos de datatypes.(C, N, D, T ou string)
v_strlen = STRLEN( v_string ).

BREAK-POINT.

Você também pode gostar