Program Kozelites; Uses Newdelay,AritUnit,Raciona5,Crt,Dos; {$I Valos.Inc} Var x : ValosSzam; iterszam : Integer; pont : Integer; c : Char; { A kozelito rutinok: } Procedure Gyok2_Newton(Var gyok: Tort); Var x,y,z: Tort; Begin iterszam:=0; gyok:=EgyTort; repeat TortOszt(gyok,KettoTort,y); TortOszt(EgyTort,gyok,z); TortOsszead(y,z,x); gyok:=x; inc(iterszam); until iterszam=7; End; { GyokN_Newton } Procedure Gyokvonas2(Var vx: ValosSzam); Var gyok: Tort; Begin Gyok2_Newton(gyok); Konv_RacVal(vx,gyok,MaxPontossag); End; { GyokvonasN } Procedure Gyok2_Pell(Var vx: ValosSzam); Var p,q,r,s: EgeszSzam; sv: Tort; Begin iterszam:=0; Konv_StringEgesz(p,'39202'); Konv_StringEgesz(q,'27720'); repeat Szoroz(p,q,r); q:=r; Szoroz(p,p,s); Kivon(s,ketto,p); inc(iterszam); until iterszam=5; Egeszbol_Tort(p,q,sv); Konv_RacVal(vx,sv,MaxPontossag); Writeln; End; { Gyok2_Pell } Procedure Pi_wallis(Var vx:ValosSzam); Var ps,ptl,ps2,ptl2: EgeszSzam; sv,st: Tort; begin ptl:=egy; ps:=nulla; sv:=EgyTort; iterszam:=0; repeat case (iterszam)mod(2) of 1 : begin Osszead(ptl,ketto,ptl2); ptl:=ptl2; end; 0 : begin Osszead(ps,ketto,ps2); ps:=ps2; end; end; Egeszbol_Tort(ps,ptl,st); TortSzoroz(sv,st,sv); inc(iterszam); until iterszam=250; TortSzoroz(sv,KettoTort,sv); Konv_RacVal(vx,sv,MaxPontossag); end; Procedure hatvanyoz(tx:Tort; k:integer;var hatv:Tort); var i:integer; begin hatv:=EgyTort; for i:=1 to k do TortSzoroz(hatv,tx,hatv); end; Procedure Arctg_kozelit(Var tx:Tort; vx:ValosSzam); var sv,st,hatv:Tort; eg,eg2:EgeszSzam; k:integer; begin iterszam:=0; sv:=NullaTort; eg:=egy; k:=1; repeat hatvanyoz(tx,k,hatv); case (iterszam)mod(2) of 0 : ; 1 : ; end; Egeszbol_Tort(hatv,eg,st); TortOsszead(st,sv,sv); inc(iterszam); Osszead(eg,ketto,eg2); eg:=eg2; k:=k+2; until iterszam=7; Konv_RacVal(vx,sv,MaxPontossag); end; Procedure E_hatvany(var vx:Valosszam); {var} begin end; Begin Clrscr; KonstansLetrehozas; { ű2 k”zelˇt‚s, a Newton-m˘dszerrel } Writeln('Pascal:'); Writeln(sqrt(2)); Writeln; Writeln('Gy”k-2 k”zelˇt‚s Newton-m˘dszerrel:'); Gyokvonas2(x); Kiir(x,72); Writeln(' Iter ci˘sz m:',iterszam:4); Writeln; Writeln('-----------------------'); { ű2 k”zelˇt‚s, a Pell-egyenlettel } Writeln('Gy”k-2 k”zelˇt‚s Pell-egyenlettel:'); Gyok2_Pell(x); Kiir(x,72); Writeln('Iter ci˘sz m:',iterszam:4); Writeln; Writeln('-----------------------'); Writeln('Pi kozelitese'); Writeln('Pascal:',pi); Pi_wallis(x); Kiir(x,70); Writeln('Iter ci˘sz m:',iterszam:4); Writeln; { Writeln('-----------------------'); Writeln('e kozelitese'); Writeln('Pascal:',exp(1.0)); E_hatvany(x); Kiir(x,70); } c:=ReadKey; End.