system "clear" print " " 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 isto 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 do programa e das cópias que " print "você dele fizer - é a proteção do direito autoral que não lhe impede" print "de usar livremente o conhecimento mas que mantém a memória de quem " print "participou de sua produção." print "Aperte enter para continuar!" pause -2 system "clear" ##set terminal postscript enhanced color print "Este programa desenha a reta tangente ao gráfico de uma função no ponto" print "(a,f(a)) em que \"a\" é um dos extremos de um intervalo onde há troca" print "de sinal. \n \n \n" print " O zero da reta tangente é uma aproximação do zero da função. \n" print "O programa itera o processo usando o zero da reta tangente como novo ponto" print "onde considerar a uma nova reta tangente. Podemos mostrar que este método" print "pode produzir uma sucessão que converge para o zero da função. Há situações" print "em que o método falha.\n \n" print "Aperte enter para continuar!" pause -2 print "Para melhor visualizar este programa, deixe o cursor no terminal onde o " print "programa estiver rodando e vá dando \"enter\". Deixe os dois terminais disjuntos," print "este terminal e o terminal gráfico do gnuplot, assim você poderá continuar" print "lendo as mensagens do programa. \n \n" print "Aperte enter para continuar!" pause -2 print " a função cujas raízes estou procurando. " print " f(x) = sin(0.25*x)*(x+5)*(x-6) \n " print "Observe que você pode trocar a equação da função sem precisar se preocupar" print "em calcular novamente a derivada. A deriva está sendo calculada aproxima-" print "damente usando um quociente de difeferenças. Leia o programa, neste ponto," print "para ver como é que eu fiz. Troque a equação da função e volte a rodar" print "o programa. Experimente diversas vezes até entender como é que funciona." print "Leia também o capítulo 2 do meu livro, apenas rodar programas pode signficar" print "que você brincando com um vídeo-game em vez de aprender alguma coisa. \n" print "Aperte enter para continuar!" pause -2 f(x) = sin(0.25*x)*(x+5)*(x-6); delta = 0.0000001; ##0.25*cos(0.25*x)*(x+5)*(x-6)+ sin(0.25*x)*(x-6)+ sin(0.25*x)*(x+5) df(x) = (f(x+delta)-f(x))/delta; ## derivada aproximada print " a = -8.5 " print "Aperte enter para continuar!" pause -2 a = -8.5; P(x) = f(a) + df(a)*(x-a); ## set output "exer03_03.eps" ## saida de dados para arquivo set arrow from -10,-10 rto a, f(a) set label "ponto de tangencia" at -10,-10 plot f(x), P(x), 0 print "Aperte enter para continuar!" pause -2 print "A equação da reta tangente ao gráfico de f no ponto (a,f(a)) é" print " y = f(a) + df(a)(x - a)" print "em que estou usando a notação \"df(a)\" para a derivada da função no " print "ponto \"a\". Se colocarmos y = 0 nesta equação e resolvermos a equação" print "do primeiro grau vamos encontrar para x o valor" print " x = a - f(a)/df(a)" print "e escrevendo \"computacionalmente\" - usando a expressão de um comando" print "de computação (de uma linguagem) temos" print " a = a - f(a)/df(a)" print "um novo valor para o ponto \"a\" para iterar o algoritmo. Quer dizer que" print "vou desenhar a reta tangente agora no ponto (a,f(a)) com o novo valor " print "atribuido a esta variável." print "Aperte enter para continuar!" pause -2 print "É isto que você vai agora numa sucessão. Leia o programa, altere o programa" print "para entender melhor o que está acontecendo. Não tema estragar o programa," print "uma nova cópia sempre pode ser pegada na página." print "Aperte enter para continuar!" pause -2 a = a - f(a)/df(a) pause -2 set arrow from -10,-10 rto a, f(a) P(x) = f(a) + df(a)*(x-a) plot f(x), P(x),0 a = a - f(a)/df(a) pause -2 P(x) = f(a) + df(a)*(x-a) set arrow from -10,-10 rto a, f(a) plot f(x), P(x),0 a = a - f(a)/df(a) pause -2 P(x) = f(a) + df(a)*(x-a) set arrow from -10,-10 rto a, f(a) plot f(x), P(x),0 a = a - f(a)/df(a) pause -2