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 - Curso de Matemática " print "Sobral - Ceará - Brasil " print "Aperte enter para continuar!" pause -2 system "clear" print "Este script do gnuplot faz uma varredura inteira (o passo é inteiro) no " print "intervalo [-10, 10] até encontrar uma troca de sinal da função. " print "Encontrando a troca de print sinal usa o extremo do intervalo como " print "ponto de tangência da reta cuja raíz é uma aproximação da raíz da " print "função. " print "Este script do gnuplot se compõe de três programas que precisam se encontrar" print "no mesmo diretório: " print " exer04_01_04.gnuplot" print " exer04_01_041.gnuplot - continua verificando troca de sinal" print " exer04_01_042.gnuplot - calcula as raízes iterativamente " print "porque o primeiro programa chama, alternativamente, um dos dois ao analisar" print "se há troca de sinal." print " " print "Aperte enter para continuar!" pause -2 system "clear" u(x) = 2*x + 1 du(x) = 2 v(x) = (x + 4)*sqrt(2) dv(x) = sqrt(2) p(x) = x + 13 dp(x) = 1 q(x) = sin(v(x)/p(x)) dq(x) = cos(v(x)/p(x))*(dv(x)*p(x) - v(x)*dp(x))/(p(x)*p(x)) f(x) = u(x)*q(x) df(x) = du(x)*q(x) + u(x)*dq(x) print "Aqui começa a varredura, cada vez que você acionar um novo intervalo" print "será selecionado e gnuplot verificará se há troca de sinal no intervalo emitindo" print "uma frase avisando que não há troca de sinal." print "Quando encontrar uma troca de sinal, passará ao método iterativo para encontrar" print "uma raíz aproximada." a = -10 print "********* Início da varredura ************************* a= ", a print "Aperte enter para continuar!" pause -2 system "clear" n = 1; ## (1) contando as iteradas para que você saiba onde achou a troca contador = 1; ## para contar a quantidade iteradas até 5 if (f(a)*f(a+1)< 0) print "troca de sinal", "[",a,",",a+1,"]";\ else load "exer04_01_041.gnuplot" print "Calculando as raízes iterativamente "; print "Mantenha o cursor neste terminal para poder acionar " print "Aperte enter para continuar " ; pause -2 ; load "exer04_01_042.gnuplot"; quit