Matematické Fórum


1. 8. 2026 (L) Fórum bude brzy uzavřeno 😿

Nejste přihlášen(a). Přihlásit

#1 24. 10. 2018 12:51

sarel
Zelenáč
Příspěvky: 1
Reputace:   
 

Logaritmus v pythonu

Ahoj, mám problém s úkolem, mám vytvořit dekadický logaritmus v pythonu bez užití math.log to znamená prý podle metody půlení intervalu. Jednoduše řečeno když někdo zadá jakékoli realné číslo musí mu to dekadicky zlogaritmovat. Nevíte někdo jak na to?

Offline

 

#2 24. 10. 2018 15:25

MichalAld
Moderátor
Příspěvky: 5367
Reputace:   130 
 

Re: Logaritmus v pythonu

Musíš si stanovit nějaký interval, ve kterém řešení určitě leží. U logaritmu je to jednoduché, ale občas se to blbě programuje. Spočítáš si číslo, co leží uprostřed toho intervalu, označíš $x_0$.

Potom si vypočítáš $y_0 = 10^{x_0}$ (to už je specifické pro to, že máš počítat desítkový logaritmus, kdybys počítal odmocninu, tak tam bude mocnina, atd).

Hodnotu $y_0$ porovnáš s tím číslem, z něhož máš počítat logaritmus. A podle výsledku vezmeš buď horní nebo spodní polovinu toho původního intervalu.

A pak pokračuješ zase od začátku. Máš zase interval (jen už je poloviční, než byl předtím) - spočítáš prostředek, potom tu funkci, porovnáš výsledek a vybereš zase spodní nebo horní polovinu toho intervalu. A pak zase znova.

Tak dlouho, až dosáhneš požadované přesnosti. S každým krokem se přesnost zdvojnásobí.

Jen nevím, jak budeš bez matematické knihovny počítat to $10^x$. Obecně je to jednodušší než výpočet logaritmu, ale jak to dělat reálně, to nevím.

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson