Programação em C/C++ bisseção [RESOLVIDO]

1. Programação em C/C++ bisseção [RESOLVIDO]

caio thimons
caio.thimons

(usa Ubuntu)

Enviado em 08/10/2012 - 08:38h

Bom dia á todos,

Vi um estilo de bisseção aqui. Porém, não estou conseguindo acrescentar esta função nessa bisseção. Alguém me ajuda??


f(x)=c0s(ex-2)-ex+2=0


Alguém sabe como fazer isso. Não estou conseguindo!

Obrigado desde de já!


  


2. Re: Programação em C/C++ bisseção [RESOLVIDO]

Paulo
paulo1205

(usa Ubuntu)

Enviado em 09/10/2012 - 02:14h

A parte da expressão "=0" é justamente o que você está procurando, então não se preocupe em representá-la. Entendo então que a sua expressão de f(x) é cos(exp(x)-2)-exp(x)+2.

Para você garantir que existem raízes possíveis de encontrar por bisseção, a função precisa ser contínua e você deve escolher dois valores diferentes de x tais que um deles produza um valor negativo ao ser aplicado à função, e o outro, um valor positivo (pois se a função é contínua e seu sinal se alterna, então ela passa por zero pelo menos uma vez).

Como tanto a exponencial quanto o cosseno são contínuas para qualquer valor real, podemos logo partir para os valores iniciais de x. Um valor muito negativo fará com que a exponencial tenha um valor quase nulo, de modo que praticamente se poderia reduzir a expressão de f(x) a cos(-2)+2, que vai ser algo um valor entre +1 e +2, positivo. Já um valor positivo e grande em x levará exp(x) a crescer de modo muito mais intenso. Dentro do da parecela com o cosseno, esse valor provocará uma violenta oscilação entre -1 e +1, cada vez mais rápida, e na parcela seguinte, tenderá a levar a função para um valor negativo muito grande. Logo, é claro que a função cruza o zero em algum valor intermediário de x. E esse valor você poderá calcular pela aplicação do algoritmo da bisseção.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts