Bestimmung eines Logarithmus durch Intervallschachtelung

Aufgabe:

Es soll die Lösung zu x = 2y  (x = 5) gefunden werden.

Die Aufgabe wird durch Intervallschachtelung gelöst.

Wir bestimmen ein Intervall [b|c], in dem y liegt. Als ein solches Intervall kommt z.B. [1| 3] in Frage.

21 < 5 <  23 , 5 = 2y      →      1 < y < 3

Das Intervall um y soll nun schrittweise verkleinert werden.

Es wird der Mittelwert y = (b+c)/2  von b und c bestimmt. Ist 2y > 5 (y ist zu groß), dann wird y als  rechte Intervallgrenze c genommen. Ist 2y < 5 (y ist zu klein), dann wird y als linke Intervallgrenze b bestimmt. Dieser Vorgang wird 10000 mal wiederholt. Dabei wird der Bereich des Intervalls [b|c] < 0,0000001.

Die Intervallschachtelung  nach dem folgenden Programmzeile in der App. Rechner.php (Einstellung: „mit Wiederholung“) liefert den Wert y =  2,32192809488746 (rechte Intervallgrenze). Die Intervallgrenzen b und c des ersten Intervalls und x müssen in das Variablenfeld eingetragen werden !

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h))

Erläuterung: Für die Intervallschachtelung wurde die Funnktion sn() eingeführt.

Definition: x>0 → sn(x)=1, x=<0 → sn(x)=0.

Die Zahl y, mit der 2 potenziert werden muss, um x zu erhalten, wird Logarithmus x zur Basis 2 genannt. Abkürzung log2(x).

x= 2y ( x = 2log2(x) ) →  y = log2(x)

 

Beispiele:

log2 (8) = 3           →      23  = 8

log10 (100) = 2      →    102  = 100

log2 (64) = 6          →    2= 64


Hinweis: Mit dem folgenden Programm in Sim.html (erscheint nach Anklicken mit dem unten stehenden Programm ) wird der Graph der Funktion y =log2(x) dargestellt. Soll mit dem Programm Rechner.php zu einem bestimmten x, z.B. x=5 der Logarithmus ermittelt werden, dann ist x=x+0,1 durch x = 5 zu ersetzen.


b=-3;c=15; x=x+0,1;

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2; g= 2^y ;h= x-g; b=b*(1-sn(h))+y*sn(h); c=c*sn(h)+y*(1-sn(h));

y=(b+c)/2