Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Logarithmus Funktion (https://www.delphipraxis.net/146154-logarithmus-funktion.html)

PhilmacFLy 14. Jan 2010 16:07


Logarithmus Funktion
 
Hoi DP

Im Vorraus, nein ich muss keine programmieren mich interessiert nur wie man so eine Funktion Programmieren könnte, da mir heute während der Schule beim tippen auf dem Taschenrechner eingefallen ist, das ich garnicht wüsste wie ich sowas "zu Fuß" programmieren sollte.
Ich hab zwar zwei Lösungsansätze, die sind aber meiner Meinung nach beide zu unpraktikabel.
1. 3^x = 9
9 ist nicht so groß daher probier ich alle zahlen <9 aus
2. Intervallschachtelung bis man an den Wert bis auf X komma stellen hin kommt

Ich denke das eher 2tes der fall ist oder irre ich mich? Da 1tes zu vile Resourcen frisst.
Oder was meint ihr wie könnte man sowas noch lösen?

Luckie 14. Jan 2010 16:09

Re: Logarithmus Funktion
 
Vielleicht hilft das: http://de.wikipedia.org/wiki/Logarit...es_Logarithmus

Lumikki 14. Jan 2010 16:24

Re: Logarithmus Funktion
 
Vielleicht mit der Umkehrfunktion?
Wenn man den natürlichen Logarithmus nimmt, ist die Umkehrfunktion dazu ja e^x. Das kann man ja ganz einfach ausrechnen, und dann müsste sich nur überlegen, wie genau man die Funktio haben will und dann umkehren, also den negativen kehrwert vom ergebnis bilden...
Das ganz geht ja auch mit anderen Logarithmen, da hat man dann halt die Basis b^x

Wolfgang Mix 14. Jan 2010 16:27

Re: Logarithmus Funktion
 
@PhilmacFLy:

Vielleicht hilft dir die Erkenntnis, daß Logarithmus nur
ein anderes Wort für Exponent ist.

Grüß

Wolfgang

Medium 14. Jan 2010 17:06

Re: Logarithmus Funktion
 
Zitat:

Zitat von Lumikki
Vielleicht mit der Umkehrfunktion?
Wenn man den natürlichen Logarithmus nimmt, ist die Umkehrfunktion dazu ja e^x. Das kann man ja ganz einfach ausrechnen, und dann müsste sich nur überlegen, wie genau man die Funktio haben will und dann umkehren, also den negativen kehrwert vom ergebnis bilden...
Das ganz geht ja auch mit anderen Logarithmen, da hat man dann halt die Basis b^x

Der Witz ist nur, dass man die allgemeine Exponentation (also wo der Exponent aus ganz R stammen darf) eben über den Logarithmus berechnet. Katze :arrow: Schwanz ;)

Lumikki 14. Jan 2010 17:16

Re: Logarithmus Funktion
 
Zitat:

Zitat von Medium
Der Witz ist nur, dass man die allgemeine Exponentation (also wo der Exponent aus ganz R stammen darf) eben über den Logarithmus berechnet. Katze :arrow: Schwanz ;)

Ja nee... man rechnet e^x meinetwegen in einer schleife aus, dann ist man halt nur begrenzt genau, und hat dann immer ein ergebnis raus, das man umkehren kann...
es gilt ja zu b^x=a der logarithmus log(b)a=x (in klammern die basis)
also hat man, wenn man die basis hat und den exponent ein ergebnis, also auch alle teile zu dem vollständigen logarithmus, es ordnet sich nur anders an o.o
kann aber gut sein das ich mich grad vertue, ich mag den logarithmus nicht, ich stehe mit im auf kriegsfuß :D

Wolfgang Mix 14. Jan 2010 17:20

Re: Logarithmus Funktion
 
ich glaube, jetzt kommt nur noch Blödsinn ...

Befaßt euch 'mal bitte mit den Potenz- und Logarithmengesetzen

s.h.a.r.k 14. Jan 2010 17:20

Re: Logarithmus Funktion
 
Ich kenne die Methode, dass man die Reihenentwicklung kennt und davon die n ersten Glieder zur Berechnung nimmt. Je mehr Glieder man dazu nimmt, desto genauer wird dann das Ergebnis. Das ist das was Luckie angedeutet hat.

jmd anders 14. Jan 2010 18:07

Re: Logarithmus Funktion
 
Man kann das ganze mit dem Newton Verfahren iterieren, konvergiert eigentlich relativ schnell. Genauere Informationen zum Newton-Verfahren -> Wikipedia
Xn+1 = Xn - f(x) / f'(x)
also wenn man z. B. ln(7) berechnen will, kann man das folgendermaßen tun:
ln(7) = x
->e^x = 7

->e^x/7-1 = 0 =: f(x)

daraus folgt f'(x) = e^x/7

eingesetzt sieht das dann so aus:

Xn+1 = Xn - (e^x/7 -1) / (e^x/7)

Als Startwert einfach mal die 7 benutzen

Xn+1 = 7 - (e^7/7-1) / (e^7/7)

dann Xn+1 in die Vorschrift einsetzen und ein neues Xn+1 berechnen, dann noch ein schönes Abbruch-Kriterium. das wars

Medium 14. Jan 2010 18:10

Re: Logarithmus Funktion
 
Zitat:

Zitat von Lumikki
man rechnet e^x meinetwegen in einer schleife aus

Da bin ich mal auf deine Schleife für e^-3,1415927 gespannt ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:48 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz