Exercícios

  1. Implemente o pseudocódigo visto em sala de aula RaizBissecao, de forma não recursiva, que recebe como entrada os valores a, b, f, e e retorna uma aproximação para uma raiz de f no intervalo (a,b) com erro menor que e. Para testar se a sua função está funcionando corretamente verifique se a saída do comando RaizBissecao(0,3,f=function(x){x-1},0.000001) é um número muito perto de 1.

  2. Implemente o pseudocódigo visto em sala de aula RaizBissecaoRec, de forma recursiva, que recebe como entrada os valores a, b, f, e e retorna uma aproximação para uma raiz de f no intervalo (a,b) com erro menor que e. Para testar se a sua função está funcionando corretamente verifique se a saída do comando RaizBissecaoRec(0,3,f=function(x){x-1},0.000001) é um número muito perto de 1.

  3. Vamos ver com mais detalhes como esse método funciona. Para isso modifique uma das funções implementadas nos Exercícios acima de forma que a função retorne um array com todos os pontos médios dos intervalos encontrados durante o método (todas as aproximações), e não somente a última com erro menor que e. Vamos chamar essa função de RaizBissecaoArray. Tente reproduzir o código e a saída a seguir. Amplie o seu gráfico e veja se você entende porque os valores em vermelho foram os retornados pelo método.

saida = RaizBissecaoArray(0,3,f=function(x){x-1},0.000001)
plot(0,xlab="x",ylab="f(x)",xlim=c(0,3),ylim=c(-1,2),type="n")
grid()
abline(h=0)
abline(v=0)
curve(x-1,col="blue",add=T)
for(i in 1:length(saida)){
  points(saida[i],0,col="red",pch=18,cex.lab=1)
  text(saida[i],-0.2,i,col="red")
}  

  1. Vamos usar o Método da Bisseção para encontrar a raiz de \(f(x)= 2-x^5-x^3-x\). Veja que esse é um polinômio de grau 5 com apenas 1 raiz real. Podemos afirmar isso pois essa é uma função decrecente (quem já viu derivada pode verificar que a sua derivada é negativa sempre) e por isso cruza uma única vez o eixo x.

    1. Determine valores de \(a\) e \(b\) para aplicar o Método da Bisseção nessa função.
    2. Use a função do Exercício 1 ou a do Exercício 2 (ou as duas) para encontrar uma aproximação para a raiz da função no intervalo \((a,b)\).
    3. Verifique se o valor encontrado está correto. Como fazer isso?
  2. Vamos usar o Método da Bisseção para encontrar a(s) raiz(es) de \(f(x)= e^x - \frac{1}{x}\).

    1. Primeiro descubra quantas raízes tem essa função. Para isso você pode analizer os gráficos de \(e^x\) e \(\frac{1}{x}\) e encontrar quantas vezes eles se cruzam. b . Ainda analisando os gráficos das funções, determine valores de \(a\) e \(b\) para aplicar o Método da Bisseção.
    2. Use a função do Exercício 1 ou a do Exercício 2 (ou as duas) para encontrar uma aproximação para a raiz da função no intervalo \((a,b)\).
    3. Verifique se o valor encontrado está correto. Como fazer isso?
  3. Vamos usar o Método da Bisseção para encontrar uma aproximação para o número irracional \(\sqrt{3}\).

    1. Escolha uma função \(f\) que tenha uma raiz em \(\sqrt{3}\). Não vale \(f(x) = x - \sqrt{3}\), pois estamos supondo que não sabemos calcular \(\sqrt{3}\). A função deve conter apenas números racionais.
    2. Escolha valores de \(a\) e \(b\) de forma que você garanta que \(f\) do item acima tenha uma raiz no intervalo \((a,b)\) e que essa raiz seja \(\sqrt{3}\).
    3. Use as respostas dos itens acima e a função do Exercício 1 ou a do Exercício 2 (ou as duas) para encontrar uma aproximação para \(\sqrt{3}\).
    4. Verificar se a sua aproximação está correta. Como fazer isso?
  4. Vamos usar o Método da Bisseção para encontrar aproximações para todas as soluções da equação \(\dfrac{x^3}{6} = 1 - x^2 - x\).

    1. Primeiro descubra quantas soluções tem essa função. Como você pode fazer isso?
    2. Defina uma função \(f\) para a qual as raízes de \(f\) são as soluções da equação.
    3. Para cada uma das raízes de \(f\): determine valores de \(a\) e \(b\) para os quais você garante que a raiz em questão está dentro do intervalo \((a,b)\).
    4. Para cada uma das raízes de \(f\): use a função do Exercício 1 ou a do Exercício 2 (ou as duas) e os valores de \(a\) e \(b\) para encontrar uma aproximação para a raiz de \(f\) no intervalo \((a,b)\).
    5. Para cada uma das raízes de \(f\): verifique se o valor encontrado está correto. Como fazer isso?
  5. Encontre uma aproximação para \(\pi\) a partir do Método da Bisseção. Veja que \(\pi\) é uma raiz da função \(\mathrm{sen}(X)\). Quais os valores de \(a\) e \(b\) você pode escolher para aplicar o método?

  6. Implemente uma função que recebe como entrada um número \(x \ge 0\) e retorna \(\sqrt{x}\). Tente primeiro fazer sem olhar a solução já feita na parte teórica. Você vai precisar chamar a função já implementada no Exercício 1 ou a do Exercício 2. Depois, encontre aproximações para \(\sqrt{2}\), \(\sqrt{3}\) e \(\sqrt{5}\). Compare o resultado de \(\sqrt{3}\) com aquele encontrado no Exercício 6.

  7. Vamos juntar as funções implementadas nessa lista com as da lista anterior. Combinando funções já feitas, escreva uma função que recebe como entrada um valor \(x>0\) e retorna \(f(x) = e^{\sqrt{x}}\). Verifique se o valor encontrado está correto. Como fazer isso?