5 votos

Calcular ln(x) con 8 dígitos calculadora

Tengo un poco de un problema único. Bueno, tal vez no es un problema porque estoy muy curiosos acerca de ella, pero...

Tengo una simple 8 dígitos calculadora. Ha +, -, x, /, y una constante operación de la función. No tiene utilizable de la ranura de memoria.

Necesito (lit. quisiera saber cómo) para calcular ln(x) en esta calculadora. De cualquiera de las series que he encontrado a perder mucha precisión ya que lo que está fuera de los 8 dígitos rango se trunca sin redondeo. He utilizado Padé approximants con funciones trigonométricas, y de la continua fracción para exp(), pero ninguno de estos dos métodos son adecuados para ln(x), ya sea porque no existe ninguna forma de evitar el error de truncamiento o requiere la escritura de muchos de los valores intermedios, o se requiere la memorización y la perforación en muchas de las constantes.

¿Alguien sabe de alguna buena manera de calcular ln(x) (o cualquier otra base, ya que la memorización de una constante es ACEPTAR) para el número de dígitos como sea posible, tan fácilmente como sea posible en esta calculadora (puntos de bonificación a los métodos en los que el valor en la pantalla de inmediato, lo que significa que no hay que escribirlo)?

El asunto es que, si por casualidad usted conoce algunas buenas maneras de calcular otras funciones especiales, estoy interesado en eso.

Gracias!

4voto

Simon D Puntos 1414

Yo tenía un cuatro-función de calculadora en la década de 1970, y se utiliza para extraer logrithms muy a menudo de ella. He utilizado decimal logrithms.

El método fue el uso de una cuna-de la hoja (una página de un bloc de notas), en la que el antilogs de 0.1 a 0.9, entonces 0.01 a 0.09 etc, fueron escritos. Luego uno se divide por el mayor número en la lista, hasta que uno tiene un número como 1.0000 2135 o algo. La 2135 poco fue entonces dividida por ln(10), para obtener el resto de los dígitos.

El número podría entonces ser dividido por log(e) o lo que sea, para obtener el valor deseado.

Para calcular antilogs, la misma hoja se utiliza, pero se multiplica la expresión hasta eg $2=10^{0.3}*10^{0.001}\dots$. La diferencia era pre-multiplica por 2.30... y 1 agregado. Todo el proceso toma alrededor de cuatro a seis divisiones a hacer, y esto significa que usted debería ser capaz de tirar de siete dígitos logrithms de su calculadora.

2voto

vonbrand Puntos 15673

Tal vez una fórmula debido a Gauss es útil. Pero creo que estaría más interesado en Goldberg "cálculo de Logaritmos Dígito por Dígito" (BRICS Informe de RS-04-17, de la Universidad de Aarhus, 2004).

1voto

CodingBytes Puntos 102

Calcular de una vez por todas a $$\ln 2=\sum_{k=1}^\infty{1\over k\>2^k}\ ,$$ y lo almacenan en su constante registrarse $c$.

Debido a un arbitrario $x>0$ dividir o multiplicar por $2$ tantas veces como sea necesario para producir un número $y\in\bigl[{1\over2},1]$, y mantener el número de $n\in{\mathbb Z}$ de veces que se ha dividido por $2$ en su cabeza. Poner $z:=1-y$. A continuación, $0\leq z\leq{1\over2}$ y $$\ell:=-\ln y=-\ln(1-z)=\sum_{k=1}^\infty {z^k\over k}\geq0\ .$$ Finalmente $$\ln x= n c-\ell\ .$$

0voto

7raiden7 Puntos 852

La siguiente no es sencilla, pero, que yo sepa, es la manera más fácil de utilizar primaria de la función. Me propongo utilizar la expansión de Taylor de la siguiente manera: $$ \ln(1+x)=\sum_{k=0}^{\infty}\frac{(-1)^{k+1}x^k}{k}, $$ Al menos para $x\approx 0$.

0voto

Argo Puntos 161

Primero de todo, si lo desea, puede trabajar con la base-10 logaritmos y, a continuación, convertir a los naturales de registro por una simple multiplicación con un pre-calculadas constante:

$$\ln x=\ln 10\log_{10}x$$ donde $\ln 10\approx 2.303$.

Así que... cambio de su número en el intervalo [0.1,1], que indica la parte entera del logaritmo:

$$\log_{10}103.42=3+\log_{10}0.10342$$ $$\log_{10}0.0043=-2+\log_{10}0.43$$

El resto se puede hacer de nuevo en la base natural. Mejor que una serie de Taylor es un Pade approximant. Por ejemplo, usted podría usar

$$\ln (1+x)\approx \frac{x(6+x)}{6+4x}$$

Usted podría encontrar un Pade approximant para la base 10, si no te gusta para convertir todo el tiempo. He sugerido en base 10 de la reducción de porque es visual - usted también podría dividir o multiplicar repetidamente por $e$.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X