# PRIKALD 1 > Digits=30: > x:=0.00001; > y:=sqrt(x*x+1.)-1.; > s:=x^2/(sqrt(x^2+1.)+1.); > # PRIKLAD 2 > e:=evalf(E); > x:=e+0.00000001; > u:=ln(x)-1.; > v=ln(x/e); # PRIKLAD 3 # Mente hodnotu Digits v nasledujucom priklade: > Digits:=10; > y1:=(10.^50+812.)-10.^50+10.^55+511.-10.^55; > y2:=10.^50+812.-10.^50+10.^55+511.-10.^55.; > y3:=(10.^50+812.-10.^50)+(10.^55-10.^55)+511.; > y4:=(10.^50-10.^50)+812.+(10.^55-10.^55)+511.; # PRIKLAD 4 # Pocitajte pre b:=1,10,100,1000,... # Korene kvadratickej rovnice ax^2+bx+c=0 > Digits:=10: > a:=1.: > b:=10000000.: > c:=1.: > d:=sqrt(b^2-4*a*c): > r1:=(-b-d)/(2*a); > r2:=(-b+d)/(2*a); > sucin_korenov:=r1*r2; > t1:=r1; > t2:=c/t1; > sucin_korenov:=t1*t2; # PRIKAD 5 # Rekurentna postupnost # y[1]=1, y[2]=1/3, y[n]=10/3*y[n-1]-y[n-2], # n=3,4,... # Presne riesenie je y[n]=1/(3^(n-1)) > m:=100: > z:=array(1..m): > z[1]:=1.: > z[2]:=1./3.: > for n from 3 by 1 to m do > z[n]:=10./3.*z[n-1]-z[n-2]: > od: > print(z): # PRIKLAD 6 # Vypocet exp(z) pomocu Taylorovho radu # e = priamy vypocet # e0=1./exp(abs(z)), kde exp(abs(z)) sa pocita pomocou # Taylorovho radu # ex= kniznicna funkcia # Mente parametre z,m,Digits (z<0 ) > Digits:=10: > z:=-20.: > m:=100: > c:=1.: c0:=1.: > s:=c: s0:=c: > for i from 1 by 1 to 100 > do > c:=c*z/i: c0:=c0*abs(z)/i: > s:=s+c: s0:=s0+c0: > od: > e:=s; e0:=1./s0; > ex:=exp(z); # PRIKLAD 7 # Vypocitajte 10 000 000+1+1+1....+1, kde cislo 1 pricitate 10 # 000 000 krat # Vypocitajte 10 000 000+(1+1+1....+1), kde cislo 1 pricitate 10 # 000 000 krat # Porovnakte vysledky, mente hodnotu Digits. > # PRIKLAD 8 # Vypocitajte x^2-y^2 pre x:=10^-6, y:=9*10-7 # vypocitajte (x-y)*(x+y) pre x:=10^-6, y:=9*10-7 # Porovnjte vysledky, mente hodnotu Digits > Digits:=8: > x:=10.^(-6): y:=9.99999*10^(-7): > a1:=x^2-y^2;b1:=(x-y)*(x+y); # PRIKLAD 9 # Mente hodnotu Digits > Digits:=6: > p:=t->(t-1.1)^3*(t-2.1); > plot(p(t),t=1.099992..1.100008); > for i from 0 to 20 do > p(1.099992+0.000001*i); > od; # PRIKLAD 10 # Kolko korenov ma polynom p # p=t^6-6*t^5+15*t^4-20*t^3+15*t^2-6*t+1 # na zaklade znamienkovych zmien ? > Digits:=10: > m:=200: > v:=array(1..m): > p:=t->t^6-6*t^5+15*t^4-20*t^3+15*t^2-6*t+1; > for i from 1 to m do > v[i]:=p(0.98+0.0001*i); > od: > print(v): > plot(p(t),t=0.98..0.99,v=-0.0000000001..0.0000000001); # PRIKLAD 11 # Funkcie p1, p2, p3 su "algebraicky rovnake" ale na pocitaci ... > Digits:=15; > p1:=t->t^7-7*t^6+21*t^5-35*t^4+35*t^3-21*t^2+7*t-1; > p2:=t->(t-1)^7; > p3:=t->((((((t-7)*t+21)*t-35)*t+35)*t-21)*t+7)*t-1; > plot((p3(t)-p2(t))/p2(t),t=1.001..1.003,colour=red); > plot((p3(t)-p1(t))/p2(t),t=1.001..1.003,colour=green); > plot((p2(t)-p1(t))/p2(t),t=1.001..1.003,colour=yellow); # PRIKLAD 12 # Funkcia p je konstantna = 1 > Digits:=3; > p1:=t->t+1.; > p2:=t->1.; > p3:=t->t; > p:=t->(p1(t)-p2(t))/p3(t); > h:=0.00005: > for i from 100 to 120 do p(i*h); od; >