system "clear" print " " print " " print "============================================================" print " Os direitos do autor e a GPL " print "============================================================" print " " print "Este programa é distribuido sob GPL. " print "Se você não souber o que é a GPL, envie um e-mail ao autor " print " tarcisio@member.ams.org " print "mas em suma quer dizer que você pode usar livremente o sistema" print "de programas aqui mencionados, desde que esta informação seja mantida" print "em todas as alterações que você fizer dos programas e das cópias que " print "você deles fizer - é a proteção do direito autoral que não lhe impede" print "de usar livremente o conhecimento mas que mantém na memória quem " print "participou de sua produção." print "Este programa foi escrito por Tarcisio Praciano-Pereira " print "professor da Universidade Estadual Vale do Acaraú - UeVA " print "Laboratório de Matemática Computacional " print "Sobral - Ceará - Brasil " pause -2 "Aperte enter para continuar!" system "clear" pow(x,n) = x**n; x1= -5.0; x2= 0; x3= 6.0; x4= 8.0; y1= 1.0; y2= 0.0; y3= 2.0; y4= -6.0; d1= 0; d2= -1.0; d3= -2.0; d4= 0.0; ## P1(x) = a10 + a11*pow(x-x1,1) + a12*pow(x-x1,2) +a13*pow(x-x1,3); ## dP1(x) = a11 + 2*a12*pow(x-x1,1) + 3*a13*pow(x-x1,2); a10 = y1; a11 = d1; h1 = x2-x1; ## P1(x2) = a10 + a11*pow(h1,1) + a12*pow(h1,2) +a13*pow(h1,3) = y2 ## dP1(x2) = a11 + 2*a12*pow(h1,1) + 3*a13*pow(h1,2) = d2 ## --------------------------------------------------------------- ## 2*P1(x2) = 2*a10 + 2*a11*pow(h1,1) + 2*a12*pow(h1,2) + 2*a13*pow(h1,3) = 2*y2 ## pow(h1,1)*dP1(x2) = a11*pow(h1,1) + 2*a12*pow(h1,2) + 3*a13*pow(h1,3) = d2*pow(h1,1) ## --------------------------------------------------------------- ## 2*a10 + a11*pow(h1,1) - a13*pow(h1,3) = 2*y2 - d2*pow(h1,1) ## --------------------------------------------------------------- ## --------------------------------------------------------------- a13 = -1.0*(2*y2 - d2*pow(h1,1) - 2*a10 - a11*pow(h1,1))/pow(h1,3); a12 = 1.0*(d2 - a11 - 3*a13*pow(h1,2))/(2*pow(h1,1)); P1(x) = a10 + a11*pow(x-x1,1) + a12*pow(x-x1,2) +a13*pow(x-x1,3); ## P2(x) = a20 + a21*pow(x-x2,1) + a22*pow(x-x2,2) +a23*pow(x-x2,3); ## dP2(x) = a21 + 2*a22*pow(x-x2,1) + 3*a23*pow(x-x2,2); a20 = y2; a21 = d2; h2 = x3-x2; ## P2(x3) = a20 + a21*pow(h2,1) + a22*pow(h2,2) +a23*pow(h2,3) = y3 ## dP2(x3) = a21 + 2*a22*pow(h2,1) + 3*a23*pow(h2,2) = d3 ## --------------------------------------------------------------- ## 2*P2(x3) = 2*a20 + 2*a21*pow(h2,1) + 2*a22*pow(h2,2) + 2*a23*pow(h2,3) = 2*y3 ## pow(h2,1)*dP2(x3) = a21*pow(h2,1) + 2*a22*pow(h2,2) + 3*a23*pow(h2,3) = d3*pow(h2,1) ## --------------------------------------------------------------- ## 2*a20 + a21*pow(h2,1) - a23*pow(h2,3) = 2*y3 - d3*pow(h2,1) ## --------------------------------------------------------------- ## --------------------------------------------------------------- a23 = -1.0*(2*y3 - d3*pow(h2,1) - 2*a20 - a21*pow(h2,1))/pow(h2,3); a22 = 1.0*(d3 - a21 - 3*a23*pow(h2,2))/(2*pow(h2,1)); P2(x) = a20 + a21*pow(x-x2,1) + a22*pow(x-x2,2) +a23*pow(x-x2,3); ## P3(x) = a30 + a31*pow(x-x3,1) + a32*pow(x-x3,2) +a33*pow(x-x3,3); ## dP3(x) = a31 + 2*a32*pow(x-x3,1) + 3*a33*pow(x-x3,2); ## --------------------------------------------------------------- h3 = x4-x3; a30 = y3; a31 = d3; ## P3(x3) = a30 + a31*pow(h3,1) + a32*pow(h3,2) +a33*pow(h3,3); = y3; ## dP3(x3) = a31 + 2*a32*pow(h3,1) + 3*a33*pow(h3,2) = d3; ## --------------------------------------------------------------- ## 2*P3(x3) = 2*a30 + 2*a31*pow(h3,1) + 2*a32*pow(h3,2) + 2*a33*pow(h3,3); = 2*y3; ## pow(h3,1)*dP3(x3) = a31*pow(h3,1) + 2*a32*pow(h3,2) + 3*a33*pow(h3,3) = d3*pow(h3,1); ## --------------------------------------------------------------- ## 2*P3(x3)-dP3(x3)*pow(h3,1) = 2*a30 + a31*pow(h3,1) - a33*pow(h3,3) = 2*y3 - d3*pow(h3,1); a33 = -1.0*(2*y3 - d3*pow(h3,1) - 2*a30 - a31*pow(h3,1))/pow(h3,3); a32 = 1.0*(d3 - a31 - 3*a33*pow(h3,2) )/(2*h3); P3(x) = a30 + a31*pow(x-x3,1) + a32*pow(x-x3,2) +a33*pow(x-x3,3); f(x) = (x<=0)?P1(x):(x<=6)?P2(x):P3(x); set xrange [x1-0.51:x4+0.51] plot P1(x), P2(x), P3(x), f(x), 0 pause -2 "Aperte enter para continuar!" pause -2 "Aperte enter para continuar!" Riem1(a,b,delta,soma)=(a>b)?delta*soma:Riem(a+delta,b,delta,soma+P1(a)) Riem3(a,b,delta,soma)=(a>b)?delta*soma:Riem(a+delta,b,delta,soma+P2(a)) Riem2(a,b,delta,soma)=(a>b)?delta*soma:Riem(a+delta,b,delta,soma+P3(a)) Riem(a,b,delta,soma)=(a>b)?delta*soma:Riem(a+delta,b,delta,soma+f(a)) system "clear" print "O valor da integral é aproxim. ", Riem(-5,8,0.01,0) print "A soma das integrais é ", Riem1(-5,0,0.01,0) + Riem2(0,6,0.01,0) + Riem2(6,8,0.01,0)