Página 1 de 1

Trabajar con decimales

Publicado: Jue Ene 05, 2006 4:25 am
por Jota
Hola ke tal... estoy realizando un programa ke maneja calificaciones de alumnos... pero a la hora de promediar dichas notas... si algun resultado es por ejemplo 10,5... ese 10,5 kisiera redondearlo hacia arriba para obtener un 11.... visual basic permite llevar al numero superior inmediato si el decimal es de 6 a 9... pero si es 5 como en el caso planteado lo lleva al numero inferior inmediato: 10. ¿Cómo puedo llevar un numero con decimal mayor ó igual a 5 al numero superior...?

PD: ya he utilizado las funciones VAL, FIX, ROUND y INT y no me funcionan, el 10, 5 es llevado a 10 y no a 11 como lo deseo... agredezco su ayuda de antemano... =)

Publicado: Jue Ene 05, 2006 4:30 pm
por ABCdatos
Una posibilidad sencilla, es hacer el redondeo "artesanalmente", primero sumando 1/2 y luego tomando el entero:

Código: Seleccionar todo

debug.Print int(10.49 + 0.5)
 10 
debug.Print int(10.5 + 0.5)
 11 
No deja de ser curioso que la función Round no proporcione el resultado correcto.

Saludos.