![]() |
|
Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android |
«
Tema Anterior
|
Siguiente tema
»
|
Herramientas |
#1
|
||||
|
||||
REdondeo al alza
Hola a todos
Estoy intentando terminar un programita y para ello solo me falta hacer esto necesito redondear una variable he usado la representacion sin decimales pero eso no vale ya que los redondeos normales lo que hacen es redondear al alza si los decimales pasan de 5 y a la baja si bajan de 5 eso no me sirve lo que necesito si la variable vale 5,0 que de 5 y si vale 5,1 5,3 5,7 o 5,9 que de 6 lo que intento es quitarle los decimales y hacer cifra cifra sin decimales si decimales es diferente de 0 cifra=cifra+1 sino cifra=cifra y ya lo presento sin decimales con string format he intentado ver como quito los decimales con algo como parse o math.round pero no me sale, no encuentro ejemplos alguien me puede ayudar Gracias a todos. |
|
#2
|
||||
|
||||
Mete la variable en un entero casteandola y te debe funcionar, algo así:
Decimal numeroConDecimales = ..... ; int numeroSinDecimales = (int) numeroConDecimales; Última edición por kriogeN Día 25/03/12 a las 22:16:21 |
#3
|
||||
|
||||
De nuevo muchas gracias KrioGen
estab intentando eso pero los parentesis los ponia al otro nuemro y no me salia Gracias de nuevo. Saludos. |
#4
|
||||
|
||||
No sabía que "casteando" un decimal redondeara al alza. Mira que no fijarme en eso...
Cada día se aprende algo nuevo ![]() Enviado desde mi LG-P970 usando Tapatalk |
#5
|
||||
|
||||
Cita:
Pero lo que él quería saber era precisamente eso, como obtener la parte entera, luego a eso ya tendrías que comprobar si hay parte decimal o no y si la hay sumarle 1 al número entero. |
#6
|
||||
|
||||
Lo que he hecho es lo siguiente:
double parteentera; double decimal; parteentera=( int)dientes; decimal=dientes-parteentera; if (decimal>0) dientes=dientes+1; dientes era tambien double pero fuera del metodo. y funciona perfectamente Gracias ![]() |
#7
|
||||
|
||||
int redondeo_al_alza(float valor)
{ return (int)valor == valor ? valor : valor + 1 } de nada. |
Respuesta |
![]() |
||||||
|
«
Tema Anterior
|
Siguiente tema
»
|
|
Hora actual: 06:26:59 (GMT +2)
HTCMania: líderes desde el 2007