¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Obtener el valor entero más cercano a un número decimal en programación

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 7 Vistas
0
Cargando...

Si tengo un valor, digamos, 1.47

el valor entero más cercano es 1.

si es 1.51, el valor entero es 2.

¿Cómo obtener esto?

Gracias de antemano

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Hola,

Utiliza la función ROUND, el número se redondea hacia arriba o hacia abajo durante la conversión.

Los diferentes formatos de ROUND son:

ROUND <r> : Los campos de tipo P se multiplican por 10**(-r) y luego se redondean.

Ejemplo:

DATA pack TYPE p VALUE '123.456'

DECIMALS 3.

WRITE pack DECIMALS 2.

WRITE: / pack ROUND -2,

/ pack ROUND -1,

/ pack ROUND 1,

/ pack ROUND 2.

Resultado:

123,46

12.345,600

1.234,560

12,346

1,235

Gracias

Madhavi

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola

Revisa este código..

DATA l_f_kbetr4 type konp-kbetr .

CLEAR : l_f_kbetr4 , l_f_kbetr5 .

l_f_kbetr4 = l_F_kbetr1 - l_f_kbetr3 .

CHECK = FRAC( l_f_kbetr4 ) .

IF CHECK GE '0.50' .

l_f_kbetr4 = CEIL( l_f_kbetr4 ) .

ELSE .

l_f_kbetr4 = FLOOR( l_f_kbetr4 ) .

ENDIF.

l_f_kbetr5 = l_f_kbetr4 .

G_r_E1KONP-KBETR = l_f_kbetr5 .

Espero que ayude.

Praveen

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola

prueba esto,

report zars no standard page heading

line-size 170

line-count 65(4).

data: int type i.

data: char(10) type c value '123'.

class cl_abap_container_utilities definition load.

call method cl_abap_container_utilities=>read_container_c

exporting

im_container = char

importing

ex_value = int

exceptions

illegal_parameter_type = 1

others = 2.

write: int.

Recompensa si es útil,

GAURAV J.

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola

Revisa este código...

DATA l_f_kbetr4 tipo konp-kbetr .

LIMPIAR : l_f_kbetr4 , l_f_kbetr5 .

l_f_kbetr4 = l_F_kbetr1 - l_f_kbetr3 .

CHEQUEAR = FRAC( l_f_kbetr4 ) .

SI CHEQUEAR GE '0.50' .

l_f_kbetr4 = CEIL( l_f_kbetr4 ) .

SINO .

l_f_kbetr4 = FLOOR( l_f_kbetr4 ) .

FIN SI.

l_f_kbetr5 = l_f_kbetr4 .

G_r_E1KONP-KBETR = l_f_kbetr5 .

Espero que te ayude.

Praveen

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?