Solamente dos decimales

18/07/2003 - 09:23 por Jaime J. | Informe spam
Hola a todos

Quiero hacer la siguiente operación :

nResultado = nX / nY

y que el resultado solo tenga dos decimales sin redondear.

¿Como puedo hacerlo?

Saludos y gracias. J.

Preguntas similare

Leer las respuestas

#1 Juan Ramón Hueso
18/07/2003 - 09:28 | Informe spam
SET DECIMALS (Comando)
Vea también
SET DATASESSION | SET FIXED | SET SYSFORMATS

Especifica el número de decimales que se mostrarán en las expresiones
numéricas.

SET DECIMALS TO [nDecimalPlaces]Parámetros
nDecimalPlaces
Especifica el número mínimo de indicadores decimales que se muestran. El
valor predeterminado es dos decimales. El número máximo de decimales es 18 y
el mínimo es cero.
Observaciones
SET DECIMALS especifica el número mínimo de decimales que se utilizarán para
mostrar los resultados de división, multiplicación, y funciones
trigonométricas y financieras.

SET DECIMALS tiene como alcance la sesión actual de datos.

Vea también
SET DATASESSION | SET FIXED | SET SYSFORMATS


Saludos.
Juan Ramón Hueso.
Cartagena-España.
Respuesta Responder a este mensaje
#2 Jaime J.
18/07/2003 - 10:19 | Informe spam
Hola, gracias por tu respuesta.

Pero, esto solo es para indicar el número de decimales que se muestran, si
entras en el debuguer el número de decimales del resultado es mayor, por lo
que las operaciones posteriores las hace con todos los decimales y no con
los dos que yo quiero.

¿Hay alguna otra manera de indicar que el resultado contenga solo dos
decimales?.

Saludos. J.


"Juan Ramón Hueso" escribió en el mensaje
news:
SET DECIMALS (Comando)
Vea también
SET DATASESSION | SET FIXED | SET SYSFORMATS

Especifica el número de decimales que se mostrarán en las expresiones
numéricas.

SET DECIMALS TO [nDecimalPlaces]Parámetros
nDecimalPlaces
Especifica el número mínimo de indicadores decimales que se muestran. El
valor predeterminado es dos decimales. El número máximo de decimales es 18


y
el mínimo es cero.
Observaciones
SET DECIMALS especifica el número mínimo de decimales que se utilizarán


para
mostrar los resultados de división, multiplicación, y funciones
trigonométricas y financieras.

SET DECIMALS tiene como alcance la sesión actual de datos.

Vea también
SET DATASESSION | SET FIXED | SET SYSFORMATS


Saludos.
Juan Ramón Hueso.
Cartagena-España.


Respuesta Responder a este mensaje
#3 Gorka Justo
18/07/2003 - 11:25 | Informe spam
Puedes probar:

nResultado = ROUND(nX / nY,2)

Saludos
Gorka



En/na Jaime J. ha escrit:

Hola, gracias por tu respuesta.

Pero, esto solo es para indicar el número de decimales que se muestran, si
entras en el debuguer el número de decimales del resultado es mayor, por lo
que las operaciones posteriores las hace con todos los decimales y no con
los dos que yo quiero.

¿Hay alguna otra manera de indicar que el resultado contenga solo dos
decimales?.

Saludos. J.


"Juan Ramón Hueso" escribió en el mensaje
news:


SET DECIMALS (Comando)
Vea también
SET DATASESSION | SET FIXED | SET SYSFORMATS

Especifica el número de decimales que se mostrarán en las expresiones
numéricas.

SET DECIMALS TO [nDecimalPlaces]Parámetros
nDecimalPlaces
Especifica el número mínimo de indicadores decimales que se muestran. El
valor predeterminado es dos decimales. El número máximo de decimales es 18




y


el mínimo es cero.
Observaciones
SET DECIMALS especifica el número mínimo de decimales que se utilizarán




para


mostrar los resultados de división, multiplicación, y funciones
trigonométricas y financieras.

SET DECIMALS tiene como alcance la sesión actual de datos.

Vea también
SET DATASESSION | SET FIXED | SET SYSFORMATS


Saludos.
Juan Ramón Hueso.
Cartagena-España.










Respuesta Responder a este mensaje
#4 Ana María Bisbé York
18/07/2003 - 11:28 | Informe spam
Hola Jaime:

Ahhh Entonces lo que quieres es redondear a dos decimales, no? Mira
ROUND()

lnresultado = operación de cálculo
lnredondeado = ROUND(lnresultado,2)

o más directo ...
lnredondeado = ROUND(operación de cálculo,2)

Saludos,

Ana,
La Habana, Cuba.
Madrid, España.
Ayuda a FoxPro. Legaliza tu copia.

"Jaime J." escribió en el mensaje
news:uN$
Hola, gracias por tu respuesta.

Pero, esto solo es para indicar el número de decimales que se muestran, si
entras en el debuguer el número de decimales del resultado es mayor, por


lo
que las operaciones posteriores las hace con todos los decimales y no con
los dos que yo quiero.

¿Hay alguna otra manera de indicar que el resultado contenga solo dos
decimales?.

Saludos. J.


"Juan Ramón Hueso" escribió en el


mensaje
news:
> SET DECIMALS (Comando)
> Vea también
> SET DATASESSION | SET FIXED | SET SYSFORMATS
>
> Especifica el número de decimales que se mostrarán en las expresiones
> numéricas.
>
> SET DECIMALS TO [nDecimalPlaces]Parámetros
> nDecimalPlaces
> Especifica el número mínimo de indicadores decimales que se muestran.


El
> valor predeterminado es dos decimales. El número máximo de decimales es


18
y
> el mínimo es cero.
> Observaciones
> SET DECIMALS especifica el número mínimo de decimales que se utilizarán
para
> mostrar los resultados de división, multiplicación, y funciones
> trigonométricas y financieras.
>
> SET DECIMALS tiene como alcance la sesión actual de datos.
>
> Vea también
> SET DATASESSION | SET FIXED | SET SYSFORMATS
>
>
> Saludos.
> Juan Ramón Hueso.
> Cartagena-España.
>
>


Respuesta Responder a este mensaje
#5 Jaime J.
18/07/2003 - 11:49 | Informe spam
jeje.

Bueno, os repondo a los dos.

No, no quiero que me redondee, si no que me trunque a los dos decimales.

Yo ahora lo he resuelto de esta manera, pero era por si habia alguna funcion
especifica

nResultado = Int(nX / nY * 100) / 100

Saludos y gracias a los dos. J.




"Ana María Bisbé York" escribió en el mensaje
news:
Hola Jaime:

Ahhh Entonces lo que quieres es redondear a dos decimales, no? Mira
ROUND()

lnresultado = operación de cálculo
lnredondeado = ROUND(lnresultado,2)

o más directo ...
lnredondeado = ROUND(operación de cálculo,2)

Saludos,

Ana,
La Habana, Cuba.
Madrid, España.
Ayuda a FoxPro. Legaliza tu copia.

"Jaime J." escribió en el mensaje
news:uN$
> Hola, gracias por tu respuesta.
>
> Pero, esto solo es para indicar el número de decimales que se muestran,


si
> entras en el debuguer el número de decimales del resultado es mayor, por
lo
> que las operaciones posteriores las hace con todos los decimales y no


con
> los dos que yo quiero.
>
> ¿Hay alguna otra manera de indicar que el resultado contenga solo dos
> decimales?.
>
> Saludos. J.
>
>
> "Juan Ramón Hueso" escribió en el
mensaje
> news:
> > SET DECIMALS (Comando)
> > Vea también
> > SET DATASESSION | SET FIXED | SET SYSFORMATS
> >
> > Especifica el número de decimales que se mostrarán en las expresiones
> > numéricas.
> >
> > SET DECIMALS TO [nDecimalPlaces]Parámetros
> > nDecimalPlaces
> > Especifica el número mínimo de indicadores decimales que se


muestran.
El
> > valor predeterminado es dos decimales. El número máximo de decimales


es
18
> y
> > el mínimo es cero.
> > Observaciones
> > SET DECIMALS especifica el número mínimo de decimales que se


utilizarán
> para
> > mostrar los resultados de división, multiplicación, y funciones
> > trigonométricas y financieras.
> >
> > SET DECIMALS tiene como alcance la sesión actual de datos.
> >
> > Vea también
> > SET DATASESSION | SET FIXED | SET SYSFORMATS
> >
> >
> > Saludos.
> > Juan Ramón Hueso.
> > Cartagena-España.
> >
> >
>
>


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida