Você está na página 1de 3
2108/23, 15:09 Carregande. << Pesquise mais solugées! Erros encontrados na solugao? >> Reporte aq! Responder Forneci o texto e a captura de tela para sua melhor compreensao. A captura de tela também tem alguns comentarios para sua ajuda. Por favor, note que estes séo arquivos de script que devem ser salvos como "function_name.m" em seu diretério raiz do MATLAB. piloto.m pion 4S tunction pilot (a,b, fun) 3- | precision ~ 0.017 ae jat=are: 2 different alge e- | atene ao [and e- |e~(areniy +o, iscetion Method") 2 10~ iwhiie abe(fun(c) - 0) > precision sen ha — e=(al+bt) t 0.5 a — Af sign(fun(ai)) ~~ sign(fun(e)) ha bie ae elseif sign(fun(c)) += sign(fun (b>) hs — al=o not within Limit la — n-ntty the function is at 4.206 \n",z00t); laa — fprinte(vmmbor of iterations taken i él \n" sn): a ~ | alsp(too~ as n= 4 2e~ © = ( atfuntd) ~ befuna) 3/(funtb) ~ funtad)= on’): J2e- (while abs(fun(c) ~ 0) > precision Schecking as - © = ( atfun(e) — bifun(a) }/ (fondo) ~ fonta)) 30 - Af sign(fun(a)) ~= sign (fen(e)) sa - elseif sign(fun(c)) <= sign (fun (ey) 4 — end 3e- end the function is at 4.206 \n",z00t); 40- prince (mmo of ions taken is td \n"yn)s fungao piloto(a,b,fun) hitpsflexedustack.nlwhy-112-milion-rated-moles-caicedo-shouldnt-leave-brighton-tis-year! 13 2170829, 15:09 Ccarepando, preciso = 0,01; al = a; b1 = b; %definindo outra variavel no mesmo limite de colchetes para 2 algoritmos diferentes disp( Método da Bisseccao’); n=; c= (a1 + b1)*0,5; while abs(fun(c) - 0) > precisao % checando até nao estar dentro do limite c= (at +b1)*05; if sign(fun(a1)) ign(fun(c)) bl=c elseif sign(fun(q)) ~= sign(fun(b1)) al=q fim n=n +1; % aumentando as iteragées em 1 fim raiz = ¢ fprintf("A raiz da fungao esté em %.10f \n" root); fprintf(’Nimero de iteragées realizadas é %d \n".n); disp(~~~~~~~~~ ~~ False Position’); n=1; C= (atdivertida(b) - b*divertida(a))/(divertida(b) - divertida(a)); while abs(fun(c) - 0) > precisao %checando até nao estar dentro do limite ¢ = (a*fun(b) - b*fun(a) )/(fun(b) - fun(a)); if sign(fun(a)) ~= sign(fun(o) bec elseif sign(fun(q) ~= sign(fun(b)) asc fim n= n+1; % aumentando as iteragdes em 1 fim raiz = ¢ fprintf("A raiz da fungdo estd em %.10f \n" root); fprintf(’Nimero de iteragées realizadas é %d \n"n); fim SAIDA Além das varidveis e da fungao ja definidas na questao, colocamos um colchete entre 0 a 0,2 para os algoritmos operarem. hitpsflexedustack.nlwhy-112-milion-rated-moles-caicedo-shouldnt-leave-brighton-tis-year! 28 2108/23, 15:09 Carragando. >> b= 10; a >> rade >> V = 12.4; >> fun = @(h) (L*(0.54pi*r*2 - r*2*asin(h/r) - h.*sqrt (r*2- >> pilot (0,0.2,fun) wenenaneweeBisection Method Root of the function is at 0.1664062500 Number of iterations taken is 9 *2))-W)F ~~False Position Root of the function is at 0.1665150212 Number of iterations taken is 1 >> fun(0. 1664062500) ans = -0.0047 >> fun(0. 1665150212) ans = -0.0069 >> format longs >> fzero(fun, 0.16) ans = 0.166166024659368 Assim, vemos que as raizes obtidas pelos métodos tém precisio de 0,01 pé da raiz original. No entanto, vale ressaltar que a falsa posicao levou apenas 1 iteracdo para chegar a raiz, enquanto © método da bisseccao levou 9 iteracées . Portanto, naturalmente, o método da posicao falsa é muito mais rapido que o método da bissesao. *Um pedido humilde* - Se vocé tiver alguma divida, use a secdo de comentarios para se comunicar. Por favor, seja um pouco paciente, é uma promessa honesta que responderei o mais rdpido possivel. Isso esclarecerd sua dtivida e também me ajudaré a responder melhor as suas proximas perguntas. Ao mesmo tempo, se minha resposta o ajudou, considere deixar um voto positivo. Espero que entenda ‘meu ponto de vista. Obrigado Gosta: 2 Nao gosta: 0 hitpsjlexedustack.nlwhy-112-milion-rled.moiss-caicedo shouldntleave-brighton-his-yeard 33

Você também pode gostar