FTP | CCD | Buscar | Trucos | Trabajo | Foros |
#1
|
||||
|
||||
Tangente
¿Porque cuando pongo tan(Pi/2) me devuelve -3.6893.........., siendo que en realidad se debería producir una indeterminación?. Tengo muchos problemas con la funcion tangente (tan);
|
#2
|
||||
|
||||
La función tan utiliza la instrucción FPTAN para calcular la tangente. La tangente de pi/2 no es una indeterminación, es igual a infinito, y eso es precisamente lo que te esta devolviendo, el número mas alto que puede.
Aquí tienes explicada la instrucción FPTAN http://www.website.masmforum.com/tut...ap10.htm#fptan |
#3
|
||||
|
||||
¿Y por qué Assert(IsInfinity(Pi/2)) falla?
// Saludos |
#4
|
||||
|
||||
Cita:
De todas formas, yo lo que dije es que te daba el numero mas alto que podía, no dije que fuese "infinito". Y además tengo mis dudas de que la función IsInfinite funcione en este caso, ya que su parámetro esta definido como un double mientras que el resultado de "tan" es un extended. Puede que este ultimo punto sea una tontería, tendría que comprobarlo mejor ... De todas formas lo que es innegable es que la tan(pi/2)=x/0 y que x/0, por lo menos cuando yo estudiaba matemáticas, es igual a infinito, no una indeterminación |
#5
|
||||
|
||||
Ja, ja, ¡cuántos errores en una sola línea!
La pregunta era más que nada para saber del funcionamiento de la unidad Math. Se supone que funciones como IsInfinite y la constante INFINITE están para tratar estos casos, o al menos eso creía yo. // Saludos |
#6
|
||||
|
||||
Cita:
De todas formas, para el caso nos viene dando igual. En la mayoría de los cálculos un valor MUY alto en lugar de infinito servirá, y si tenemos mucho interés en detectar cuando realmente es infinito. Un par de If convenientemente colocados y listo |
#8
|
||||
|
||||
Pues ya ves, estaba pensando en hacer la gracia de poner esto:
Pero, imagínate, el resultado de Sin(pi/2)/Cos(pi/2) es -3,68934881474191E19 . Bueno parece que ya tenemos un nuevo valor para definir el infinito |
#9
|
||||
|
||||
No es mas sencillo verificar los valores antes de hacer el cálculo?? Ahi podria determinarse si el resultado sera Infinito o si será una indeterminación (0/0, cero sobre cero) y ya. Después de todo esos resultados son conocidos sin necesidad de hacer el cálculo. Es como si se quisiera dividir entre cero, para que esperarse a que brinque el error...
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#10
|
||||
|
||||
Cita:
|
#11
|
||||
|
||||
Glup! GluP! y requete Glup!
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
no sé como sacar la tangente de una variable | elbilla | Varios | 2 | 22-07-2004 15:59:24 |
|