Kettenbrüche
Mathematik in wxMaxima www.mathematik-verstehen.de Haftendorn Okt 2010
0.1 Handling
0.2 Inhalt
1 Kettenbrüche erzeugen
1.1
1.2
2 Kettenbrüche anzeigen
2.1
2.2
3 Mit Kettenbrüchen rechnen
1 Kettenbrüche erzeugen
Befehle für Kettenbrüche cf cfdisrep cfexpand cflength
1.1 von Hand
(%i7)
p:%pi,numer;
-->
array(kette,20);
-->
kette[1]:3;
-->
dez:p-kette[1];
-->
kpk:1/dez;
-->
kette[2]:floor(kpk);
dez:kpk-kette[2];
-->
kpk:1/dez;
-->
kette[3]:floor(kpk);
dez:kpk-kette[3];
-->
kpk:1/dez;
-->
kette[4]:floor(kpk);
dez:kpk-kette[4];
-->
kpk:1/dez;
-->
kette[5]:floor(kpk);
dez:kpk-kette[5];
-->
kpk:1/dez;
-->
kette[6]:floor(kpk);
dez:kpk-kette[6];
-->
kpk:1/dez;
-->
kette[7]:floor(kpk);
dez:kpk-kette[7];
-->
pikette:[kette[1],kette[2],kette[3],kette[4],kette[5],kette[6],kette[7]];
1.2 Anzeigen
-->
cfdisrep(pikette);
1.3 Kettenbruch automatisch
-->
cf(p);
--> cflength:4$
-->
cf(p);
-->
cfdisrep(%);
-->
cflength:4;
-->
cf(sqrt(2));
-->
w2:cfdisrep(%);
-->
ev(w2);%,numer;sqrt(2),numer;
1.4 Progamm, das den Kettenbruch ausgibt
(%i1)
kette(z,lang):=block(
local(li,vor,k,dez,i),
vor:floor(z), dez:z-vor,
li:[vor],
for i:1 thru lang do
(k:1/dez,
li:append(li,[floor(k)]),
dez:k-floor(k),
if dez<0 then i:lang+1
),
return(li)
)$
(%i8)
kette(p,3);
cfdisrep(%);
ev(%);%,numer; p,numer;
(%i23)
kette((sqrt(5)+1)/2,5);
cfdisrep(%);
ev(%);%,numer; (sqrt(5)-1)/2,numer;
(%i28)
cf((-1+sqrt(5))/2);
cfdisrep(%);
ev(%); %,numer;
(-1+sqrt(5))/2,numer;
(%i49)
kette(15/17,3);
cf(15/17);
cfdisrep(%);
ev(%);
(%i53)
z:sqrt(5);
kette(z,13);
cfdisrep(%);
ev(%);%,numer;
z,numer;
cf(z);
(%i60)
kette(1.38117185,30);
(%i61)
z:1.38117185;
kette(z,30);
cfdisrep(%);
ev(%);%,numer;
z,numer;
cf(z);
ev(%),numer;