Ohne Taschenrechner log(e)2 bzw ln2 berechnen. Was kommt da raus und warum?

2 Antworten

Natürlich gibt es zig Algorithmen!

{ log(x) ohne Basis-Anhabe ist immer der natürliche, also  ln(x) }
Da alle beliebig genau berechnet werden können, fehlt die Angabe der gewünschten Genauigkeit!

Taschenrechner sind oft nicht mal 6 Stellen genau und mit Papier und Bleistift kannst Du leicht 18 Stellen genau sein.
Hier eine Auswahl:
§1:
sum 2/[(4k)^3-4k],k=1...Unendlich ergibt ln(8)/2-1

bis k=10: ist ln(2) etwa (4335127472172929/109530094869795600+1)*2/3
=0.69305... nach Aufrundung also schon 4 Stellen genau
besser
§2:
sum 1/(k^2*(k+1)^2*(2*k+1)),k=1...10
(14459477/160044885+11)/16
0.6931466.. gerundet stimmen so 6 Nachkommastellen

§3:
ln(2)=18*acoth(26)-2*acoth(4801)+8*acoth(8749)
mit acoth(x)=1/x+1/(3x^3)+1/(5x^5)+1/(7x^7)+1/(9x^9)+1/(11x^11)+...

ln(2)=18*489385396003629583/12717743647412643840-
2*22543446088796213539274079378540109436908/108231083107119595054234825740114522230955465
+8*9105156317000641670339694211929021016461508/79661012270535868946900267383107727938731940285
=0.6922327903399386915
+0.000914390220006617
0.6931471805599453085... 18 richtige Stellen bei k=6

http://www.lamprechts.de/gerd/php/RechnerMitUmkehrfunktion.php

rechnet mit 32 Stellen 0.69314718055994530941723212145817...
und zeigt 3 Algorithmen.

§5: hypergeometrische Funktionen=Summen aus Pochhammer-Symbolen
...aber die kennt vermutlich nicht mal Dein Lehrer...


hypergerd  28.01.2017, 22:35

Übrigens, wenn keine Recher benutzt werden dürfen, reicht es meist, das Ergebnis in Formelschreibweise aufzuschreiben. 

Ich habe noch nicht erlebt (höchstens in Informatik, wenn Algorithmen praktisch angewendet werden sollen), dass es für Nachkommastellen Punkte gibt. Gerade bei irrationalen Zahlen wie hier, reicht ln(2)=0.69... (es sei denn, die Gewünschte Genauigkeit wurde angegeben -> was Du aber auch nicht in Deiner Frage angegeben hast)

0
hypergerd  28.01.2017, 23:01

Und noch ein Kettenbruch-Algorithmus für x bis etwa 12:
log(x+1)=x/(1+x/(2+x/(3+(4*x)/(4+(4*x)/(5+(9*x)/(6+(9*x)/(7+...)))))))
per Iterationsrechner habe ich mal eine Wertetabelle erstellt:
http://www.lamprechts.de/gerd/Roemisch_JAVA.htm#x/(1+x/(2+x/(3+(4*x)/(4+(4*x)/(5+(9*x)/(6+(9*x)/(7)))))))@NaB=Array(0.5,1,2,5,10,15);@N@Ci]=log(@Bi]);aD[i]=Fx(@Bi]-1);@Ni%3E5@N0@N0@N#

 

(LINK endet erst mit N# )

x  | ln(x)..........| f(x-1)
0.5 |   -0.6931471805 |-0.693142361
1 ..| 0 | 0
2 0.69314718055 |0.6931524547
5 1.60943791243 |1.6129244971
10 2.30258509299 |2.3480408714
15 2.70805020110 |2.8445848137
0
hypergerd  28.01.2017, 23:38

§7: und noch ein Grenzwert-Algorithmus:

ln(2) = lim n*(2^(1/n)-1),n gegen  unendlich

für n=1000000 bekommt man schon 6 richtige Nachkommastellen:

man muss nur die 1000000. Wurzel von 2 berechnen :-)

das zeigt http://www.lamprechts.de/gerd/Roemisch_JAVA.htm

im Beispiel 15 mit a=2;d=1000000;b=1;
schon nach 3 Schritten bekommt man 

1.0000006931478213...

nun die 1 weg und Komma um 6 nach rechts

0.6931478213.. (6 richtige Nachkommastellen)

Hinweis: pow(b,d-1) bedeutet im Schritt 1 (i=0):

1 hoch 999999 =1

dann 1.000001 hoch 999999 =2.718277750818

(das wird mit Papier & Bleistift etwas umständlich)

0

Ohne TR geht das nicht! Du kannst nur grob abschätzen. Du suchst einen Exponenten, der e^x = 2 liefert. Da e etwa 2,7 ist und irgendwas hoch null = 1 muss die Zahl zwischen 0 und 1 liegen.


Rek82 
Beitragsersteller
 28.01.2017, 12:29

Es muss doch irgend ein Näherungsverfahrens geben was man auf einem Blatt ausrechnen kann. In der Uni ist ein Rechner verboten und da wird so etwas wohl auch mal gefragt werden

1