You are on page 1of 50

Universidade do Estado do Pará

Centro de Ciências Sociais e Educação


Licenciatura em Matemática

Notas de aula de Cálculo Numérico

Prof.Esp. Osmar Tharlles Borges de Oliveira

Belém
2012
Sumário

1 Sistema Numérico e Erros 3


1.1 Introdução . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Representação dos Números . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Conversão de números: Binário ↔ Decimal . . . . . . . . . . . . . . . . . . 5
1.3.1 Números Inteiros . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.2 Números Fracionários . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.3 Operações aritméticas com ponto flutuante . . . . . . . . . . . . . . 8
1.3.4 Representação de um número com t dı́gitos na base decimal (10) . . 11
1.4 Erros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.1 Erro absoluto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.4.2 Erro relativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4.3 Erros de arredondamento . . . . . . . . . . . . . . . . . . . . . . . . 13
1.4.4 Propagação dos erros absoluto e relativo . . . . . . . . . . . . . . . 15

2 Zeros de Funções 18
2.1 Isolamento das raı́zes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2 Refinamento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3 Métodos Iterativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3.1 Método da Bissecção . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.3.2 Método Iterativo Linear (MIL) ou Método do Ponto Fixo (MPF) . 24
2.3.3 Método de Newton-Raphson . . . . . . . . . . . . . . . . . . . . . . 29
2.3.4 Considerações sobre os métodos . . . . . . . . . . . . . . . . . . . . 31

3 Interpolação Polinomial 33
3.1 Forma Linear de Vandermonde . . . . . . . . . . . . . . . . . . . . . . . . 33
3.2 Polinômio Interpolador de Lagrange . . . . . . . . . . . . . . . . . . . . . . 35
3.3 Polinômio Interpolador de Newton . . . . . . . . . . . . . . . . . . . . . . 36
3.3.1 Diferenças Divididas . . . . . . . . . . . . . . . . . . . . . . . . . . 36
3.3.2 Fórmula do Polinômio Interpolador de Newton . . . . . . . . . . . . 37

4 Integração Numérica 40
4.1 Quadratura por Interpolação . . . . . . . . . . . . . . . . . . . . . . . . . . 40
4.2 Quadratura pelas Fórmulas de Newton-Cotes . . . . . . . . . . . . . . . . 43

1
Sumário Sumário

4.2.1 Regra dos Trapézios . . . . . . . . . . . . . . . . . . . . . . . . . . 43


4.2.2 Regra de Simpson . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

UEPA 2 Prof.Esp. Osmar Borges


Capı́tulo 1

Sistema Numérico e Erros

1.1 Introdução
A solução numérica de problemas de natureza fı́sica, quı́mica, biológica, as-
tronômica entre outras, nem sempre correspondem a valores que as vezes estão distantes
dos esperados ou mesmo que não possuem relação alguma com o problema original. Mesmo
que apliquemos métodos adequados na resolução destes problemas e fizermos os cálculos to-
dos corretos, o erro ainda faz parte deste processo e, em muitos casos, não pode ser evitado.

O Cálculo Numérico objetiva estudar estruturas numéricas (algoritmos numéricos)


para resolução de problemas das mais diversas áreas do conhecimento que podem ser re-
presentados por um modelo matemático. Ele corresponde a um conjunto de ferramentas
ou métodos usados para obter a solução de problemas matemáticos de forma aproximada.
Esses métodos se aplicam principalmente a problemas que não apresentam solução exata
e, portanto, precisam ser resolvidos numericamente.

A necessidade de produzir resultados numéricos se deve a vários motivos, por


exemplo, um problema de matemática pode ser resolvido analiticamente, mas esse método
pode se tornar extremamente complexo com o aumento do tamanho do problema, ou
quando existem problemas para os quais não existem métodos matemáticos, entre outros.

Com frequência estes problemas reais não podem ser convenientemente soluciona-
dos através de fórmulas exatas. Assim se for possı́vel aceitar um a solução aproximada os
métodos numéricos serão as ferramentas adequadas para sua solução. Os métodos apro-
ximados buscam chegar o mais perto possı́vel do que seria o valor exato, dessa forma é
inerente a eles trabalhar com aproximações, erros e desvios.

Vejamos as várias fases da resolução de problemas, através do fluxograma:

3
Capı́tulo 1. Sistema Numérico e Erros 1.2. Representação dos Números

1.2 Representação dos Números


Vejamos alguns exemplos que mostram como a representação dos números em
uma máquina pode gerar alguns erros.
Exemplo 1.1. Calcule a área de uma circunferência de 100m de diâmetro.

Com efeito, temos que Acirc = πr2 . Como d = 100m então r = 50m. Logo

Acirc = π502

Os resultados possı́veis para a área desta circunferência são:

7853, 00m2

7853, 99m2
7853, 981m2
7853, 981634m2
Exemplo 1.2. Uma bola cai de cima de um prédio e sua velocidade em cada instante é
descrita pela equação horária:
1
s = s0 + v0 t + at2
2
onde s0 é a altura do prédio, v0 é a velocidade inicial e a, neste caso, representa a gravidade.

Se a altura do prédio for s0 = 30m, a velocidade da bola v0 = 0m/s e considerando a


gravidade a = 10m/s2 , a posição depois de 2s após a queda da bola é
1 2
s = 30 + 0 · 2 − · 2 = 10m
2
No exemplo 1.1, como podemos explicar os possı́veis valores para a área da cir-
cunferência? No exemplo 1.2, será que o resultado obtido é confiável?

UEPA 4 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.3. Conversão de números: Binário ↔ Decimal

Definição 1.1. Seja β ≥ 2 ∈ N. Um número real r pode ser representado em qualquer


base de numeração β, escrito da forma:
rβ = (±an an−1 . . . a1 a0 a−1 . . . a−m )β
onde os ai são dı́gitos inteiros que pertencem à base β, ou seja, valores entre 0 e β. O
valor numérico de r ∈ R na base β é dado por
an β n + an−1 β n−1 + · · · + a1 β 1 + a0 β 0 + a−1 β −1 + · · · + a−m β −m = r

1.3 Conversão de números: Binário ↔ Decimal

1.3.1 Números Inteiros


Consideremos os números (237)10 e (110111)2 . Cada um deles está representado
em uma base diferente, uma na decimal (10) e outra na binária (2), respectivamente.
Podemos decompor estes números em relação àss sua bases da seguinte maneira:
(237)10 = 2 · 102 + 3 · 101 + 7 · 100
e
(110111)2 = 1 · 25 + 1 · 24 + 0 · 23 + 1 · 22 + 1 · 21 + 1 · 20
De um modo geral, podemos escrever um número inteiro r na base β ≥ 2,
(ai ai−1 . . . a1 a0 )β com 0 ≤ ak ≤ β − 1 (k = 1, . . . , i), na forma polinomial

ai β i + ai−1 β i−1 + · · · + a1 β 1 + a0 β 0
A partir desta representação podemos converter números binários para decimais
de maneira simples, vejamos:

(110111)2 = 1 · 25 + 1 · 24 + 0 · 23 + 1 · 22 + 1 · 21 + 1 · 20 = 32 + 16 + 0 + 4 + 2 + 1 = 55
Exemplo 1.3. Converter os números abaixo para o sistema decimal:
1. (10111)2 =
2. (110110)2 =
3. (101010101010111)2 =
Como converter um número decimal para um binário?

Perceba que podemos fazer o inverso da multiplicação para encontrar os valores


binários. Veja: 55 ÷ 2 = 27 com resto 1; 27 ÷ 2 = 13 com resto 1; 13 ÷ 2 = 6 com resto
1; 6 ÷ 2 = 3 com resto 0; 3 ÷ 2 = 1 com resto 1. Então organizamos os restos de trás
para frente junto com o último quociente no qual forma o número binário referente à 55
no sistema decimal, ou seja, (110111)2 .

UEPA 5 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.3. Conversão de números: Binário ↔ Decimal

Exemplo 1.4. Converter os números abaixo para o sistema binário:

1. (237)10 =

2. (5)10 =

3. (245)10 =

1.3.2 Números Fracionários


Seja r um número real positivo na base 10, r pode ser escrito como r = rα − rβ ,
onde rα é o maior inteiro menor ou igual a r e rβ é um número tal que 0 ≤ rβ ≤ 1 e pode
ser escrito como fração decimal,

rβ = b1 · 10−1 + b2 · 10−2 + · · · + bk · 10−k + . . .


onde bi , ∀i ∈ Z∗+ , é um número inteiro tal que 0 ≤ bi ≤ 9. Se existir um m tal que
bk = 0, ∀k > m, então dizemos que rβ tem representação decimal finita.

Exemplo 1.5.
1
rβ = = 0, 125 = 1 · 10−1 + 2 · 10−2 + 5 · 10−3
8
possui representação decimal finita enquanto
1
rβ = = 0, 1111 · · · = 1 · 10−1 + 1 · 10−2 + 1 · 10−3 + . . .
9
não possui representação decimal finita.

Se r estiver na base binária temos que

rβ = c1 · 2−1 + c2 · 2−2 + · · · + ck · 2−k + . . .

∀ci = 0 ou 1 e i ∈ Z∗+ .

Vamos então converter 0, 75 decimal para binário.

Primeiramente multiplicamos o valor 0, 75 por 2, isto é,

0, 75 · 2 = 1, 5

logo a primeira casa fracionária é 1. Agora fiquemos apenas com a parte fracionária do
número decimal obtido na multiplicação, ou seja, 0, 5. Novamente multiplicamos a nova
fração por 2,
0, 5 · 2 = 1, 0

UEPA 6 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.3. Conversão de números: Binário ↔ Decimal

assim o segundo dı́gito também é 1. Como não temos mais parte fracionária decimal, então
o número binário encontrado é
(0, 11)2
Em geral temos que converter a parte inteira e a parte fracionária do número. No
caso acima, como zero faz parte dos dois sistemas não há necessidade de convertê-lo. No
entanto se tivermos a parte inteira maior que zero precisamos converter.

Exemplo 1.6. Converter os seguintes números para o sistema binário:

1. (8, 375)10 =

2. (3, 8)10 =

Na conversão da base 2 para 10 fazemos o seguinte: seja o número (0.110)2 .


Então multiplicamos cada algarismo do número na base 2, após a vı́rgula, por potências
decrescentes de 2, da esquerda para direita e somar todas as parcelas. Assim
1 1
0, 1102 = 1 · 2−1 + 1 · 2−2 + 0 · 2−3 = + + 0 = 0, 7510
2 4
Os números reais possuem dois tipos de representação em uma máquina: a repre-
sentação e ponto fixo e a em ponto flutuante.

1. Ponto Fixo: Utilizada em computadores mais antigos (não é mais amplamente


utilizada nos computadores atuais). Dada uma base β qualquer e x 6= 0 temos

n
X
x=± di · β i = dk β k + dk−1 β k−1 + · · · + d1 β 1 + d0 β 0 + d−1 β −1 + · · · + dn β n
i=k

onde k e n são inteiros satisfazendo n < k e usualmente n ≤ 0 e k > 0 e os di são


inteiros satisfazendo 0 ≤ di < β.

Exemplo 1.7. O número 567, 34 na base 10 pode ser expresso como

5 · 102 + 6 · 101 + 7 · 100 + 3 · 10−1 + 4 · 10−2

2. Ponto Flutuante Bem mais flexı́vel que a representação em ponto fixo e universal-
mente utilizada atualmente. Assim dado um x 6= 0 e uma base β qualquer temos

x = ±d · β e
ou ainda  
d1 d2 dt
x= 1
+ 2 + ··· + t × βe
β β β

UEPA 7 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.3. Conversão de números: Binário ↔ Decimal

onde β é a base do sistema de numeração, d é chamado de mantissa e e é o expoente.


A mantissa por sua vez é um número em ponto fixo, ou seja, é da forma

n
X
d=± di · β −i
i=k

onde, frequentemente, nos grandes computadores, k = 1, tal que se x 6= 0, então


d1 6= 0, 0 ≤ di < β, i = 1, 2, ...t, com t sendo a quantidade de dı́gitos significativos
ou precisão do sistema, β −1 ≤ d < 1 e −m ≤ e ≤ M .

Seja o número N de uma base β, diz-se que N está normalizado quando apresenta
a seguinte forma:
±0, d1 d2 d3 . . . dk · β e
com d1 6= 0.

Exemplo 1.8. Seja β = 10. O número r = 34, 67 é representado em ponto flutuante


normalizado como:
 
3 4 6 7
+ + + × 102 = 0, 3467
10 102 103 104

1.3.3 Operações aritméticas com ponto flutuante


Adição
Consideremos dois números x, y escritos em um sistema de ponto flutuante F (β, t, I, S)
onde I e S são os limites inferior e superior do expoente, respectivamente. Sejam x =
0, d1 d2 . . . dt · β e e y = 0, l1 l2 . . . lt · β f . Realizamos a adição com os seguintes passos:

1. registramos os números em uma lista como segue

x → d1 d2 . . . dt | 0 0 . . . 0
y → l1 l2 . . . lt | 0 0 . . . 0

Para determinar a = x + y

2. Calculamos g = e − f . Se g ≥ t, então a = x e assim a operação fica concluı́da. Se


g < t, então alinhamos y em g posições à sua direita, isto é,

y 0 → 0| 0 {z
. . . 0} | l1 l2 . . . | . . . lt 0 . . . 0
g vezes

UEPA 8 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.3. Conversão de números: Binário ↔ Decimal

3. adicionamos x com y 0 com g = e e obtemos

.
a → b0 .. b1 b2 . . . bt | bt+1

4. Se b0 6= 0 então: (i) deslocamos o registro de a uma posição à direita; (ii) Calculamos


g → g + 1 e então tomemos o registro

.
a → 0 .. b1 b2 . . . bt | bt+1

5. Se b1 = 0 então: (i) deslocamos à esquerda até que b1 6= 0; (ii) Calculamos g → g − 1


para cada posição deslocada. Assim teremos

.
a → 0 | b1 b2 . . . bt .. bt+1

6. Se g > S teremos excesso (overflow), se g < I teremos falta (underflow).

7. Para arredondamento cancelamos os valores de registro que estão além da precisão t


da máquina. O resultado será

a = x + y = 0, b1 b2 . . . bt · β g

Exemplo 1.9. Sejam x = 0, 1547 · 105 e y = 0, 2748 · 10−1 dois números em decimal com
precisão t = 4. Vemos que g = e − f = 5 − (−1) = 6. Então, a = x + y = x = 0, 1547 · 105 .
Na notação de registros temos

x → 1 5 4 7 | 0 ... 0
y → 2 7 4 8 | 0 ... 0
y0 → 0 0 0 0 | 0 0 2 7 4 8
a=x+y =x

Exemplo 1.10. Sejam x = 0, 9876 · 101 e 0, 8732 · 101 . Assim, a = x + y = 1, 8608 · 101 =
0, 18608 · 102 = 0, 1860 · 102 .

Exemplo 1.11. Sejam x = 0, 1012 · 101 e y = −0, 9876 · 10−1 . Temos que a = x + y =
0, 1012 · 101 − 0, 009876 · 101 = 0, 091324 · 101 = 0, 91324 · 100 = 0, 9132 · 100 .

UEPA 9 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.3. Conversão de números: Binário ↔ Decimal

Multiplicação
Sejam dois números x, y em ponto flutuante e seja p = x · y seu produto. Reali-
zamos à multiplicação pelos seguintes passos:

1. Dispomos os números em seus registros:

x → d1 d2 . . . dt | 0 0 . . . 0

y → l1 l2 . . . lt | 0 0 . . . 0

2. Calculamos p = x · y com expoente g = e + f

p → b1 b2 . . . bt | bt+1 . . .

3. Se b1 = 0 então normalizamos, fazendo g → g − 1


.
p → b1 .. b2 . . . bt | bt+1 . . .

4. Se g > S teremos excesso (overflow), se g < I teremos falta (underflow).


5. Cancelamos os valores de registro de p que estão além da precisão t.

p → b1 b2 . . . b t | 0 . . . 0

E logo teremos
p = 0, b1 b2 . . . bt · β g

Exemplo 1.12. Sejam os números x = 0, 1432 · 101 e y = 0, 4330 · 102 . O produto é dado
por p = x · y = 0, 0620056 · 103 = 0, 620056 · 102 = 0, 6200 · 102 .

Divisão
A operação de divisão de dois números em ponto flutuante realiza-se por meio das
x
seguinte etapas. Dados x, y determinemos seu quociente q = :
y
1. Dispomos os números em seus registros:

x → d1 d2 . . . dt | 0 0 . . . 0

y → l1 l2 . . . lt | 0 0 . . . 0

Se tivermos y = 0 então fim. Senão,


2. Calculamos o valor g = e − f e verificamos o registro

q → b0 | b1 b2 . . . bt | bt+1 . . . 0

UEPA 10 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.3. Conversão de números: Binário ↔ Decimal

3. Se tivermos b0 6= 0, então devemos ajustar q levando em consideração que g → g + 1


.
q → 0 .. b1 b2 . . . bt | bt+1 . . .

4. Se b1 = 0, então normalizamos, tomando g → g − 1


.
q → 0 .. b1 b2 . . . bt | bt+1 . . .

5. Se g > S teremos excesso (overflow), se g < I teremos falta (underflow).

6. Cancelamos os valores de q além da precisão t da máquina. Assim

x
q= = 0, b1 b2 . . . bt · β g
y

Exemplo 1.13. Sejam os números x = 0, 5649 · 101 e y = 0, 1357 · 102 . Então, a divisão
é dada por:
x
q= = 4, 162859·−1 = 0, 4162859 · 100 = 0, 4162 · 100
y
Nota: Em sistemas de ponto flutuante, as propriedades de adição, subtração, multiplicação
e divisão não obedecem necessariamente às mesmas regras da aritmética sobre o conjunto
dos números reais. Se for ultrapassado o limite permitido para o expoente na repre-
sentação de um número teremos um underf low para números muito pequenos e overf low
para números muito grandes. Em alguns sistemas, a execução do programa é imediata-
mente suspensa caso seja detectado um underf low ou um overf low enquanto outros dão
mensagens de alerta.

1.3.4 Representação de um número com t dı́gitos na base decimal


(10)
Seja x 6= 0 um número de ponto flutuante. Assim x pode ser escrito como

(±0, a1 a2 . . . at at+1 . . . an ) · 10e

com ai ∈ {0, 1, . . . , 9} e a1 6= 0. Como

0, a1 a2 ... at
+ 0, 0 0 ... 0 ... at+1 ... an
0, a1 a2 ... at at+1 ... an

UEPA 11 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.4. Erros

e 0, 00 . . . at+1 . . . an = (0, at+1 at+2 . . . an ) · 10−t logo

x = (±0, a1 a2 . . . at at+1 . . . an ) · 10e


= ±(0, a1 a2 . . . at + 0, 00 . . . 0 . . . at+1 ...an ) · 10e
= ±(0, a1 a2 . . . at + (0, at+1 at+2 . . . an ) · 10−t ) · 10e
= ±(0, a1 a2 . . . at ) · 10e + [±(0, at+1 at+2 . . . an )] · 10e−t

fazendo
±(0, a1 a2 . . . at ) = fx
e
[±(0, at+1 at+2 . . . an )] = gx
temos que
x = fx · 10e + gx · 10e−t
com 0, 1 ≤ |fx | < 1 e 0 ≤ |gx | < 1.

Exemplo 1.14. Se t = 4 e x = 234, 57 então podemos escrever x = 0, 2345·103 +0, 7·10−1 .

1.4 Erros
Nenhum resultado obtido através de cálculos eletrônicos ou métodos numéricos
tem valor se não tivermos conhecimento e controle sobre os possı́veis erros envolvidos no
processo. A análise dos resultados obtidos através de um método numérico representa uma
etapa fundamental no processo das soluções numéricas.

Definição 1.2 (Número Aproximado). Um número x é dito uma aproximação para o


número exato x se existe uma pequena diferença entre eles.

Definição 1.3. Dizemos que x é uma aproximação por falta de x se x < x e que, x é dito
uma aproximação por excesso de x se x > x.
√ √
Exemplo 1.15. Como 1, 41 < 2 < √ 1, 42 temos que 1, 41 é uma aproximação de 2 por
falta e 1, 42 é uma aproximação de 2 por excesso.

1.4.1 Erro absoluto


Definição 1.4. A diferença entre um valor exato x e sua aproximação x é dito erro
absoluto, o qual denotamos por ex , ou seja,

ex = x − x

UEPA 12 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.4. Erros

Na prática, o valor exato é quase sempre não conhecido. Como o erro é definido
por ex := x − x consequentemente também não será conhecido. Uma solução para este
problema é ao invés de determinar o erro determinemos uma cota para este erro. Isso per-
mitirá que, mesmo não sendo conhecido o erro, saberemos que ele está entre dois valores
conhecidos.

Dizemos que um número  > 0 é uma cota para o erro ex se |ex | < . Assim

|ex | <  ⇔ |x − x| <  ⇔ x −  < x < x + 


Nota: É evidente que um a cota  só tem algum valor prático se  ≈ 0.

Exemplo 1.16. Na escritura de um terreno o mesmo mede 20m × 45m, em uma nova
medição, um engenheiro obteve 20m×40m. Qual o erro absoluto cometido na nova medição
no cálculo da área do terreno?

1.4.2 Erro relativo


Dependendo a ordem de grandeza dos números envolvidos, o erro absoluto não é
suficiente para descrever a precisão de um cálculo. Por esta razão definimos o erro relativo,
que é a razão do valor absoluto pelo valor aproximado. Representamos por Ex , assim

|x − x|
Ex =
x
Exemplo 1.17. Considere x = 100, x = 100, 1, y = 0, 0006 e y = 0, 0004. Como ex = 0, 1
e ey = 0, 0002 poderı́amos concluir que a aproximação y de y é melhor do que x de x.
Porém, ao calcularmos o erro relativo temos

|100 − 100, 1|
Ex = = 0, 000999
100, 1
e
|0, 0006 − 0, 0004|
Ey = = 0, 5
0, 0004
Logo podemos concluir que a aproximação x é melhor do que y.

1.4.3 Erros de arredondamento


Como vimos, todo número real (de ponto flutuante) não nulo pode ser posto na
forma
x = fx · 10e + gx · 10e−t
com 0, 1 ≤ fx < 1 e 0 ≤ gx < 1.

UEPA 13 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.4. Erros

Consideremos x = fx · 10e como uma aproximação de para x. O erro cometido ao


aproximarmos x por x é denominado erro de arredondamento truncado sendo definido por

ex = x − x = gx · 10e−t

Exemplo 1.18. Seja x = 234, 72621. Determine a aproximação de x usando arredonda-


mento truncado e 4 dı́gitos.

Solução:

Observe que x = 234, 72621 não está na forma normalizada então vamos por nesta forma,
assim
x = 0, 23472621 · 103 = (0, 2347 + 0, 00002621) · 103
Temos como aproximação de x o valor x = 0, 2347 · 103 . O erro cometido, neste caso, é
dado por ex = 0, 23472621 · 103 − 0, 2347 · 103 = 0, 00002621 · 103 = 0, 02621.
Quando consideramos a aproximação de x para x definida por

fx · 10e se 0 < gx < 0, 5
x=
fx · 10e + 10e−t se 0, 5 ≤ gx < 1
então o erro cometido é denominadoo erro de arredondamento simétrico e é dado por

gx · 10e se 0 < gx < 0, 5
ex =
(gx − 1) · 10 + 10e−t se 0, 5 ≤ gx < 1
e

Este tipo de arredondamento é também conhecido como a regra de arredondamento


de um número com t casas decimais. A regra diz que:

• Se o valor do algarismo que fica na (t + 1)-ésima casa decimal for < 5, arredondamos
o número desprezando todos os algarismos após a t-ésima casa decimal.
• Se ≥ 5, somamos 1 ao algarismo na t-ésima casa decimal e desprezamos os algarismos
restantes.
Exemplo 1.19. Sejam x = 0, 236721 e y = 0, 4513486. Se quisermos arredondar
para três casas decimais temos que

x = 0, 237 e y = 0, 451

Se estivermos utilizando arredondamento truncado e uma aritmética finita


com t casas decimais, então 101−t é uma cota para o erro relativo cometido a cada
operação efetuada, ou seja, |Ex | < 101−t .

Agora, suponhamos que estejamos utilizando o arredondamento simétrico e


1
uma aritmética finita com t casas decimais. Então · 101−t é uma cota para o erro
2

UEPA 14 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.4. Erros

1
relativo cometido a cada operação efetuada, ou seja, |Ex | < · 101−t .
2

Definição 1.5. Dizemos que uma aproximação x de um número exato x tem r casas
decimais exatas se
|x − x| ≤ 0, 5 · 10−r

Exemplo 1.20. Seja x = 1393 com 4 casas decimais exatas. O que podemos afirmar
sobre o valor exato de x?

Solução:

Temos que |x − x| ≤ 0, 5 · 10−4 = 0, 00005 ⇔ (0, 1393 − 0, 00005) ≤ x ≤ (0, 1393 +


0, 00005), ou seja, 0, 13925 ≤ x ≤ 0, 13935.

1.4.4 Propagação dos erros absoluto e relativo


Proposição 1.1. Seja x uma aproximação para x e y uma aproximação para y, ou
seja, ex = x − x e ey = y − y. Então

1. Soma e Subtração absoluta e relativa


Ex ± Ey x y
ex±y = ex ± ey e E(x±y) = = Ex ± Ey
x±y x±y x±y

2. Multiplicação absoluta e relattiva

ex.y = xey + yex e Ex.y = Ex + Ey


3. Divisão absoluta e relativa

ex x
e( xy ) = − .ey e E( xy ) = Ex − Ey
y (y)2

Nota: Nas fórmulas de propagação de erros acima não colocamos o erro relativo ao
arredondamento no qual denotamos por ri com i = 1, 2, 3, . . . .
Nota: Na maioria dos sistemas, o resultado exato de uma operação é normalizado
e em seguida arredondado ou truncado para t dı́gitos, obtendo assim um resultado
aproximado aproximado que é armazenado na memória da máquina. Assim, mesmo
que as parcelas ou fatores de uma operação estejam representados exatamente no
sistema, não se pode esperar que o resultado armazenado seja exato.

UEPA 15 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.4. Erros

Exemplo 1.21. Supondo que x, y, z, t estejam representados exatamente, qual o erro


total no cálculo de u = (x + y).z − t?(Calcularemos o erro relativo e denotaremos por
ri , i = 1, 2, 3, . . . , o erro relativo de arredondamento no resultado da operação.)

Solução:

Seja x + y = s. O erro relativo será

x y
Es = Ex + Ey + r1 = 0 + r1
x+y x+y
pois x, y são exatos e logo EX = EY = 0, assim
1
|Es | = |r1 | < 101−t
2

Calculando s.z = m, temos

Em = Es .Ez + r2 = Es + 0 + r2 = r1 + r2

então
1 1
|Em | ≤ |r1 | + |r2 | < .101−t + .101−t = 101−t
2 2
Calculemos agora u = m − t, então
 
Em − Et m
Eu = = Em + r3
m−t m−t

logo
m 1−t
m 1 1−t
|Eu | ≤ |Em | + r3 < 10
m − t + 2 .10

m − t
Finalmente  
m 1
|Eu | <
+ .101−t
m − t 2

UEPA 16 Prof.Esp. Osmar Borges


Capı́tulo 1. Sistema Numérico e Erros 1.4. Erros

Exercı́cio

1. Converta os seguintes números decimais para sua forma binária:


x = 37 y = 2435 z = 0, 1217

2. Converta os seguintes números binários para sua forma decimal:


x = (101101)2 y = (11010111)2
z = (0, 1101)2 w = (0, 111111101)2

3. Seja um sistema aritmético de ponto flutuante de quatro dı́gitos e na base decimal.


Dados os números: x = 0, 7237.104 , y = 0, 2145.10−3 , z = 0, 2585.101 . Efetue as
seguintes operações e obtenha o erro relativo no resultado, supondo que x, y, z estão
exatamente representados:
a) x + y + z
b) x − y − z
x
c)
y
(xy)
d)
z
y
e) x.
z
4. Sejam x1 = 10, 44 e x2 = 2, 15 dois valores aproximados de x e y, respectivamente,
até o números de dı́gitos significativos. Sabendo que Ex = Ey = 0, 005, determine os
limites do erro absoluto e do erro relativo para as seguintes quantidades:
a) x + xy

b) xy
c) cos(2x − y) + sen(2x − y)

UEPA 17 Prof.Esp. Osmar Borges


Capı́tulo 2

Zeros de Funções

Definição 2.1. Dada uma função f (x), dizemos que α é uma raı́z, ou zero de f , se e
somente se f (α) = 0.
Graficamente, os zeros de uma função f correspondem aos pontos de x que a
função intercepta no eixo das abscissas, como mostra a figura

A função acima possui 2 raı́zes no intervalo [a, b]: x1 , x2 .

Para algumas funções há métodos algébricos para encontrar suas raı́zes, como por
exemplo, a função quadrática. Porém há outros tipos de funções muito mais complexas,
e que fica praticamente impossı́vel encontrar os zeros exatamente. Por isso, temos que
nos contentar em achar aproximações para esses zeros e, para tal, utilizamos os métodos
numéricos para encontrá-las.

A idéia central destes métodos é partir de uma aproximação inicial da raı́z e em


seguida, refinar essa aproximação através de um processo iterativo. Temos então duas
fases:
1. Localização ou isolamento das raı́zes, que consiste em obter um intervalo que contém
a raı́z;

18
Capı́tulo 2. Zeros de Funções 2.1. Isolamento das raı́zes

2. Refinamento, que consiste em, escolhidas as aproximações iniciais no intervalo en-


contrado na fase 1, melhorá-las sucessivamente até obter uma aproximação da raı́z
denttro de uma precisão  prefixada.

2.1 Isolamento das raı́zes


Faremos inicialmente uma análise teórica e gráfica da função f . Para tal temos
que
Teorema 2.1. Se uma função contı́nua f (x) assume valores de sinais opostos nos pontos
do intervalo [a, b], isto é, f (a).f (b) < 0, então o intervalo possui, no mı́nimo, uma raı́z da
equação f (x) = 0. Ou seja, ∃ α ∈ (a, b) tal que f (α) = 0.

A raı́z α será definida e única se f 0 (x) existir e preservar o sinal dentro do intervalo
(a, b), ou seja, se f 0 (x) > 0 ou f 0 (x) < 0 para a < x < b.

UEPA 19 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.1. Isolamento das raı́zes

Exemplo 2.1. 1. a) f (x) = x3 − 9.x + 3


Construindo apenas uma tabela de valores para f (x) e considerando apenas os sinais
temos

x −∞ −100 −10 −5 −3 −1 0 1 2 3 4 5
f (x) − − − − + + + − − + + +

Sabendo que f é contı́nua ∀ x ∈ R e observando as variações de sinal, podemos


concluir que um dos intervalos I1 = [−5, −3], I2 = [0, 1], I3 = [2, 3] contém pelo
menos um zero de f (x). Como f tem grau 3, então cada intervalo contém apenas
uma raı́z de f (x).

2. f (x) = x − 5.e−x
Temos que Df = R+ . Construindo a tabela temos

x 0 1 2 3
f (x) − − + +

Temos então que f admite pelo menos uma raı́z no intervalo I = [1, 2]. Para sabermos
se este zero é único bastanos analisar o sinal de f 0 (x):
1
f 0 (x) = √ + 5.e−x > 0
2. x
Logo f (x) admite um único zero no intervalo (1, 2).
Observação: Se f (a).f (b) > 0 não podemos afirmar nada sobre f .

Temos que, a observação do método gráfico consiste em:

• Escrever f como diferença de duas funções g e h, ou seja, f = g − h onde possamos


esboçar os gráficos das duas funções no mesmo plano;
• Usar f (x) = 0 ⇔ g(x) = h(x);
• Esboçar, da melhor maneira possı́vel, os gráficos de g e h e determinarmos por
inspeção os intervalos onde estão os pontos de interseção de g(x) e h(x), ou seja,
os α onde g(α) = h(α).

Exemplo 2.2. Delimitar os zeros da função f (x) = ex + x2 − 2.

Solução:

Temos que f (x) = 0 ⇔ ex + √x2 − 2 ⇔ ex = 2 − x2 . Assim, √


temos g(x) = ex e h(x) = 2 − x2 .
Logo ∃x1 zero de f (x) ∈ (0, 2) e ∃x1 zero de f (x) ∈ (− 2, 0).

UEPA 20 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.1. Isolamento das raı́zes

Exemplo 2.3. Delimitar os zeros de f (x) = ln(x) + x.

Solução:

f (x) = 0 ⇔ ln(x) + x = 0 ⇔ ln(x) = −x

∃x1 zero de f tal que x1 ∈ (0, 1).


Exemplo 2.4. Seja f : R → R tal que f (x) = ex + x2 − 2. Determine um intervalo
contendo um único zero de f .

Solução:

f (0) = 1 − 2 < 0; f (1) = (e − 1) > 0 ⇒ ∃x1 tal que x1 ∈ (0, 1). Temos que f 0 (x) =
ex + 2x > 0, ∀ x ∈ (0, 1). Logo x1 é o único zero.

UEPA 21 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.2. Refinamento

2.2 Refinamento
Veremos agora alguns métodos numéricos de refinamento de raı́z nos quais per-
tencem à classe de métodos iterativos.

Um método iterativo consiste em uma sequência de instruções que são executadas


passo a passo, algumas dos quais são repetidas em ciclos.

Durante o processo de iteração obtemos um número que se aproxima da raı́z. A


pergunta que se faz é a seguinte: Que tipo de teste pode ser feito para verificar o quanto
que α (aproximação da raı́z) está suficientemente próximo de α?

Existem duas interpretações para raı́z aproximada que nem sempre levam ao
mesmo resultado, α é raı́z aproximada com precisão  se:

1. |α − α| < 

2. |f (α)| < 

Podemos reduzir o intervalo que contém a raı́z a cada iteração. Ou seja, consegui-
mos um intervalo [a, b] tal que

α ∈ [a, b] e b − a <  → ∀ x ∈ [a, b], |x − α| < 


Os métodos numéricos são desenvolvidos de maneira que satisfaçam pelo menos
uma das interpretações anteriores (1 e 2). Dependendo da ordem de grandeza dos números
envolvidos é aconselhável usar teste do erro relativo, como por exemplo, considerar α como
|f (α)|
aproximação de α se < , onde L = f (x) para algum x na vizinhança de α.
L

2.3 Métodos Iterativos


2.3.1 Método da Bissecção
Seja a função f (x) contı́nua no intervalo [a, b] e f (a).f (b) < 0. A ideia é reduzir a
amplitude do intervalo até atingir a precisão requerida: b−a < , usando divisões sucessivas
do intervalo.

UEPA 22 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.3. Métodos Iterativos

O método precede da seguinte forma: faça [a0 , b0 ] = [a, b],


 
a0 + b 0  f (a0 ) < 0  α ∈ (a0 , x0 )
x0 = ⇒ f (b0 ) > 0 ⇒ a1 = a0
2
f (x0 ) > 0 b 1 = x0
 
 
a1 + b 1  f (a1 ) < 0  α ∈ (x1 , b1 )
x1 = ⇒ f (b1 ) > 0 ⇒ a2 = x 1
2
f (x1 ) < 0 b 2 = b1
 
 
a2 + b 2  f (a2 ) < 0  α ∈ (x2 , b2 )
x2 = ⇒ f (b2 ) > 0 ⇒ a3 = x 2
2
f (x2 ) < 0 b 3 = b2
 

e assim sucessivamente até que na sequência xk seja satisfeito o critério de parada bk −ak <
.

Este critério garante que se tomarmos α ∈ [ak , bk ] teremos a garantia que o erro é
menor que , isto é,
bk−1 − ak−1 b 0 − a0
|α − α| ≤ bk − ak = = <
2 2
Exemplo 2.5. A função f (x) = x.logx − 1 tem zero em (2, 3). Utilizando o método da
bissecção temos:
 
f (2) = −0, 3979 < 0  α ∈ (2, 5; 3)
2+3 
x0 = = 2, 5 ⇒ f (3) = 0, 4314 > 0 ⇒ a1 = x0 = 2, 5
2
f (2, 5) = −5, 15.10−3 < 0 b1 = b0 = 3
 

UEPA 23 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.3. Métodos Iterativos

 
2, 5 + 3  f (2, 5) < 0  α ∈ (2, 5; 2, 75)
x1 = = 2, 75 ⇒ f (3) > 0 ⇒ a2 = a1 = 2, 5
2
f (2, 75) = 0, 2082 < 0 b2 = x1 = 2, 75
 

..
.
A tabela abaixo mostra os valores obtidos após k = 7 iterações.

Temos que no exemplo acima foram calculadas 7 iterações para chegarmos ao


valor que obedece a precisão  < 0, 01. Porém há uma forma de termos uma prévia da
quantidade de iterações que podem ser feitas, dada pela fórmula

log(b0 − a0 ) − log()
k>
log(2)
onde a0 , b0 são os valores iniciais e  é a precisão dada.

Exemplo 2.6. Seja a função f (x) = x. log(x) − 1 onde o zero de f está no intervalo (2, 3)
com precisão  = 10−2 . Temos que

log(3 − 2) − log(10−2 ) log(1) + 2 log(10) 2


k> = = ≈ 6, 64
log(2) log(2) 0, 3010
a qual concluı́mos sendo k = 7.

2.3.2 Método Iterativo Linear (MIL) ou Método do Ponto Fixo


(MPF)
Definição 2.2. Dada uma função f : R → R e α ∈ R, α é ponto fixo de f se e somennte
se f (α) = α.

Seja f (x) contı́nua em [a, b], onde existe uma raı́z da equação f (x) = 0. A es-
tratégia do método é escrever a função f de tal forma que f (x) = x − φ(x). Se f (x) = 0
então
x − φ(x) = 0 ⇒ x = φ(x)

UEPA 24 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.3. Métodos Iterativos

Isto é, encontrar as raı́zes de f é equivalente a achar os pontos fixos da função φ.


Através da equação acima montamos um processo iterativo, onde, dado x0 temos

xk+1 = φ(xk ), n = 1, 2, 3, 4, . . .
A função φ é dita de função de iteração na qual não está determinada de uma
forma única, ou seja, existem indefinidas funções de iterações dada uma f qualquer.
Exemplo 2.7. Para x2 + x − 6 = 0 temos
1. a) φ1 (x) = 6 − x2
6
2. b) φ2 (x) =
x+1
6
3. c) φ3 (x) = −1
x

4. d) φ4 (x) = ± 6 − x
Teorema 2.2. Seja x uma raı́z da função f isolada no intervalo [a, b]. Seja φ uma função
de iteração da função f que satisfaz
1. φ e φ0 são contı́nuas no intervalo [a, b],
2. |φ0 (x)| ≤ M < 1, ∀ x ∈ [a, b]
3. x0 ∈ [a, b]
Então a sequência {xk } gerada pelo processo iterativo xk+1 = xk converge para α.
Graficamente, uma raı́z para a equação x = φ(x) é a abscissa do ponto de in-
tersecção da reta y = x e da função y = φ(x), ou seja, (usando os dados do exemplo
anterior)

UEPA 25 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.3. Métodos Iterativos

Observação: No caso em que as curvas não se interceptam não haverá raı́z.

Escolhemos xk como raı́z aproximada de α se |xk − xk−1 | = |φ(xk ) − xk−1 | <  ou


se |f (x)k | < , os quais podem ser usados como critérios de parada das iterações.

Seja o intervalo [a, b], o extremo mais rápido para iniciar o método é aquele cujo
o módulo da primeira derivada é menor. Isto é

Se |φ0 (a)| < |φ0 (b)| ⇒ x0 = a ou x0 = b


Como podemos ter várias funções φ(x), temos então que escolher as que são mais
indicadas para o método, ou seja, as que satisfazem a condição de |φ0 (x)| < 1, onde M é
dito limitante do módulo.

Nota: A dificuldade deste método está em encontrar a função de iteração mais adequada
que satisfaça a condição de convergência. O teste de |φ0 (x)| < 1 pode levar a um engano
se x0 não estiver suficientemente próximo da raı́z. Quanto menor for |φ0 (x)|, maior será
a convergência. Devemos observar ainda que, não necessariamente, |xk − xk−1 | ≤ erro ⇒
|xk = α| ≤ erro, por exemplo

Exemplo 2.8. Dada a função f (x) = x2 + 3x − 40, obter sua raı́z contida no intervalo
[4, 5; 5, 5] pelo método de iteração linear, sendo  ≤ 10−4 e considerando 5 casas decimais
para os cálculos.

Solução:

Temos que
x2 − 40 −2x
y= ⇒ y0 =
−3 3

UEPA 26 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.3. Métodos Iterativos

40 −40
y= ⇒ y0 =
x+3 (x + 3)2
√ −3
y= 40 − 3x ⇒ y 0 = √
2 40 − 3x
√ −3
Então a melhor φ(x) que podemos usar é φ(x) = 40 − 3x ⇒ y 0 = √ . Calculando
2 40 − 3x
x0 temos
−3
|φ0 (4, 5)| = | p | = | − 0, 2914| = 0, 2914
2 40 − 3.(4, 5)
−3
φ0 (5, 5) = | p | = | − 0, 3094| = 0, 3094
2 40 − 3.(5, 5)
e portanto x0 = 4, 5. Logo
p
x1 = φ(x0 ) = 40 − 3.(4, 5) = 5, 14782
p
x2 = φ(x1 ) = 40 − 3.(5, 14782) = 4, 95546
p
x3 = φ(x2 ) = 40 − 3.(4, 95546) = 5, 01334
x4 = φ(x3 ) = 4, 99600
x5 = φ(x4 ) = 5, 00120
x6 = φ(x5 ) = 4, 99964
x7 = φ(x6 ) = 5, 00011
x8 = φ(x7 ) = 4, 99997
x9 = φ(x8 ) = 5, 00001
x10 = φ(x9 ) = 5, 00000
e como |x10 − x9 | = 0, 00001 < 10−4 , logo α = 5.

Exemplo 2.9. Considere a função f (x) = e−x , onde existe uma raı́z α ∈ [0, 5; 0, 75]. Seja
 = 0, 006 (ou seja, o erro é menor que ), encontre α condiderando 4 casas decimais.

Solução:

Primeiramente temos que φ(x) = e−x ⇒ φ0 (x) = −e−x . A função φ0 satisfaz

max |φ0 (x)| = 0, 6065 . . .


x∈[0,5;0,75]

Então, calculando x0 temos

|φ0 (0, 5)| = 0, 6065

UEPA 27 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.3. Métodos Iterativos

e
|φ0 (0, 75)| = 0, 4724
Assim x0 = 0, 75. Então

x1 = φ(x0 ) = 0, 4724
x2 = φ(x1 ) = 0, 6298
x3 = φ(x2 ) = 0, 5327
x4 = φ(x3 ) = 0, 5870
x5 = φ(x4 ) = 0, 5560
x6 = φ(x5 ) = 0, 5735
x7 = φ(x6 ) = 0, 5635
x8 = φ(x7 ) = 0, 5692
x9 = φ(x8 ) = 0, 5660
x10 = φ(x9 ) = 0, 5678
Como |x10 − x9 | = 0, 0018 <  Logo α = 0, 5678

O gráfico abaixo mostra a conveergência para α, no caso, quando x0 = 0, 625.

UEPA 28 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.3. Métodos Iterativos

2.3.3 Método de Newton-Raphson


O método de Newton-Raphson foi criado na tentativa de acelerar o método da
iteração linear. Este método é determinado de tal forma que teremos uma função φ0 (α) = 0,
onde α é a raı́z de f . Com isto teremos a garantia que existe um intervalo [a, b] que contém
a raı́z e que |φ0 (x)| < 1 e consequentemente a convergência será mais rápida.

A função de iteração do método é dada por

f (x)
φ(x) = x −
f 0 (x)
com ela podemos montar o processo iterativo de Método de Newton-Raphson, onde, dado
x0 temos

f (xk )
xk+1 = xk −
f 0 (xk )

Graficamente temos

A derivada da função no ponto xk é igual a tangente do ângulo que a reta tangente


à curva no ponto xk forma com o eixo x. Usando a relação sobre o triângulo retângulo
temos
f (xk ) f (xk )
f 0 (x) = tg(α) = ⇒ xk+1 = xk − 0
xk − xk+1 f (xk )
Devido a esta sua interpretação geométrica o método recebe também o nome de
Método das Tangentes.

UEPA 29 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.3. Métodos Iterativos

Teorema 2.3. Sejam f, f 0 e f 00 , funções contı́nuas num intervalo [a, b], onde existe uma
raı́z α. Supondo que f 0 (α) 6= 0. Então existe um intervalo [a, b] ⊂ [a, b], contendo α tal
que se x0 ∈ [a, b], a sequência gerada pelo processo iterativo de Newton-Raphson converge
para α.
Temos como critério de parada o erro absoluto o que nada impede de ser também
o relativo. No entanto usaremos |xK+1 − xk | ≤ erro. A restrição do método está na
necessidade de conhecer um intervalo que contenha α, o que nem sempre é possı́vel. Para
decidir qual o melhor extremo do intervalo (a, b) para iniciar o método, basta verificar qual
dos extremos possui função e segunda derivada com o mesmo sinal, ou seja, f (xi ).f 00 (xi ) >
0, para i = extremos do intervalo.
Exemplo 2.10. Calcular a raı́z positiva da equação f (x) = 2x − sen(x) − 4 = 0, com
 ≤ 10−3 , usando o método de Newton-Raphson no inutervalo [2, 3] e considerando 4 casas
decimais.

Solução:

Temos que
f (x) = 2x − sen(x) − 4
f 0 (x) = 2 − cos(x)
f 00 (x) = sen(x)
Temos ainda que se x = 2, f (2) = −0, 9093 e que se x = 3, f (3) = 1, 8589. Como
f (2).f (3) < 0 logo α ∈ [2, 3].
Calculando x0 temos
f 00 (2) = −0, 9093
e
f 00 (3) = 0, 1411
e portanto x0 = 3. Assim
1, 8589
x1 = 3 − = 2, 3783
2, 9900
|x1 − x0 | = |2, 3783 − 3| = 0, 6217 > erro

f (2, 3783) 0, 0653


x2 = 2, 3783 − 0
= 2, 3783 − = 2, 3543
f (2, 3783) 2, 7226
|x − 2 − x1 | = 0, 0240 > erro

0, 0002
x3 = 2, 3543 − = 2, 3542
2, 7058
|x3 − x2 | = 0, 0001 < erro
Logo α = 2, 3542

UEPA 30 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.3. Métodos Iterativos

Observação: Vale ressaltar que os cálculos acima foram feitos regulando-se a calculadora
para radianos (Rad), pois trata-se das funções trigonométricas. No caso dos softwares
matemáticos (M aple, M atlab, M athematica) não é preciso configurar nada, isto é, os
resultados saem em radianos automaticamente.

2.3.4 Considerações sobre os métodos


Neste capı́tulo vimos três métodos diferentes para resolver equações da forma
f (x) = 0. Faremos um breve comentário das vantagens e desvantagens de cada método.

No Método da bissecção vimos que o número de iterações depende apenas do in-


tervalo inicial [a0 ; b0 ]. Logo este pode ser aplicado a qualquer função f (x) que satisfaz
f (a).f (b) < 0. Não importa o quanto f (x) seja complicada. A desvantagem é que tem
uma convergência lenta. Na prática ele é usado para refinar o intervalo que contém a raiz.
Aplicamos o método em um número fixo de iterações.

Em geral o M.I.L é mais rápido que o Método da Bissecção. Utiliza menos


operações por cada iteração. Pode encontrar raı́zes em intervalos onde f (a).f (b) > 0 . A
dificuldade é encontrar a função de iteração φ(x) que seja convergente.

O Método de Newton-Raphson tem convergência quadrática. Porém este necessita


da avaliação da função e sua derivada em cada ponto xk . Pode ocorrer de termos uma
raı́z isolada num intervalo [a; b] e o método acabe convergindo para uma outra raı́z que não
pertence a [a; b]. Isto o corre porque temos que tomar x0 ∈ [a; b] ⊂ [a; b].

Exercı́cio

1. Localize graficamente e dê intervalos de amplitude 0.5 que contenha as raı́zes das
equações
a) ln(x) + 2x = 0
b) ex − sen(x) = 0
c) ln(x) − 2x = −2
ex
d) 2cos(x) − =0
2
x2
e) 3 ln(x) −
2
x
f) (5 − x)e = 1
2. Utilize o Método da Bissecção e aproxime a menor raı́z em módulo com erro relativo
menor que 10−1 para as equações a) e b) do exercı́cio anterior.
3. Utilize o Método Iterativo Linear e aproxime a menor raı́z em módulo com erro
relativo menor que 10−2 para as equações c) e d) do exercı́cio anterior.

UEPA 31 Prof.Esp. Osmar Borges


Capı́tulo 2. Zeros de Funções 2.3. Métodos Iterativos

4. Utilize o Método Newton-Raphson e aproxime a menor raı́z em módulo com erro


relativo menor que 10−3 para as equações e) e f ) do exercı́cio anterior.

UEPA 32 Prof.Esp. Osmar Borges


Capı́tulo 3

Interpolação Polinomial

3.1 Forma Linear de Vandermonde


A interpolação é um método de encontrar uma função que represente um con-
junto de dados tabelados. Interpolar um conjunto de dados (xk , fk ), k = 0, 1, . . . , n , con-
siste em encontrar uma função pn (x), escolhida numa classe de funções, tal que satisfaça
certas propriedades. Consideraremos aqui o caso onde pn (x) é um polinômio de tal forma
que
fk = p(xk ), k = 0, 1, 2, . . . , n.
Dizemos que este polinômio que satisfaz a condição de interpolação é dito de
polinômio interpolador. Graficamente, um polinômio interpolador é uma função p menos
complexa que f e que passa por todos os pontos da função f .

Teorema 3.1 (Existência e Unicidade). Dado um conjunto de n + 1 pontos distintos


(xk , fk ), k = 0, 1, 2, . . . , n, isto é, xk 6= xj para k 6= j. Existe um único polinômio p(x) de
grau menor ou igual a n tal que p(xk ) = fk , com k = 0, 1, 2, 3, . . . , n.

Seja p(x) = a0 + a1 x1 + a2 x2 + · · · + an xn . Para obter os coeficientes ai usamos a


condição de interpolação fk = p(xk ) para k = 0, 1, 2, . . . , n. Logo

33
Capı́tulo 3. Interpolação Polinomial 3.1. Forma Linear de Vandermonde

que corresponde a forma linear

A matriz A, associada ao sistema, é uma matriz de Vandermonde, cujo determi-


nante é dado por Y
det(A) = (xi − xj )
i>j

com xi 6= xj para i 6= j. O det(A) 6= 0 logo o sistema admite uma única solução.


Exemplo 3.1. Ache uma aproximação para f (0, 3) usando o polinômio interpolador dos
dados abaixo:

UEPA 34 Prof.Esp. Osmar Borges


Capı́tulo 3. Interpolação Polinomial 3.2. Polinômio Interpolador de Lagrange

3.2 Polinômio Interpolador de Lagrange


Vamos considerar o conjunto de n + 1 pontos xk , fk , com k = 0, 1, 2, 3, . . . , n e
considerar também o polinômio representado por

Exemplo 3.2. Considerando a tabela abaixo, temos:

UEPA 35 Prof.Esp. Osmar Borges


Capı́tulo 3. Interpolação Polinomial 3.3. Polinômio Interpolador de Newton

3.3 Polinômio Interpolador de Newton


3.3.1 Diferenças Divididas
Seja y = f (x) a função que contém os pontos distintos (xk , yk ), k = 0, 1, 2, . . . , n.
A primeira derivada da função f (x) no ponto x0 é definida por

f (x) − f (x0 )
f 0 (x0 ) = lim
x − x0
x→x0
a
A diferença dividida de 1 ordem é definida como uma aproximação da primeira
derivada, ou seja,

f (x) − f (x0 )
f [x, x0 ] =
x − x0
fazendo x = x1
f (x1 ) − f (x0 )
f [x1 , x0 ] = = δy
x1 − x 0
Em geral temos

f (xk+1 ) − f (xk )
δyk = f [xk , xk+1 ] =
xk+1 − xk
ou
yk+1 − yk
δyk =
xk+1 − xk
A diferença de ordem zero é definida como δ 0 yk = f [xk ] = f (x) = yk , assim

δ 0 yk+1 − δ 0 yk
δyk =
xk+1 − xk

UEPA 36 Prof.Esp. Osmar Borges


Capı́tulo 3. Interpolação Polinomial 3.3. Polinômio Interpolador de Newton

Genericamente

δ n yk = f [xk , xk+1 , . . . , xk+n ]

f [xK+1 , xk+2 , . . . , xk+n ] − f [xk , xk+1 , . . . , xk+n−1 ]


δ n yk =
xk+n − xk
ou

δ n−1 yk+1 − δ n−1 yk


δ n yk =
xk+n − xk
Exemplo 3.3. Dada a função tabelada

k xk yk
0 0, 3 3, 09
1 1, 5 17, 25
2 2, 1 25, 41

Então
y1 − y0 17, 25 − 3, 09
δy0 = [x0 , x1 ] = = = 11, 8
x1 − x0 1, 5 − 0, 3
y2 − y1 25, 41 − 17, 25
δy1 = [x1 , x2 ] = = = 13, 6
x2 − x1 2, 1 − 1, 5
δy1 − δy0 13, 6 − 11, 8
δ 2 y0 = [x0 , x1 , x2 ] = = =1
x2 − x0 2, 1 − 0, 3
Pondo os valores em uma tabela temos

k xk yk δyk δ 2 yk
0 0, 3 3, 09 11, 8 1
1 1, 5 17, 25 13, 6
2 2, 1 25, 41

3.3.2 Fórmula do Polinômio Interpolador de Newton


Dado um conjunto de coordenadas (xk , yk ), k = 0, 1, 2, . . . , n correspondentes
a uma função f (x) = y, o método de interpolação de Newton consiste em adotar um
polinômio da forma

p(x) = y0 + (x − x0 )δy0 + (x − x0 )(x − x1 )δ 2 y0 + · · · + (x − x0 )(x − x1 ) . . . (x − xk−1 )δ n y0

Exemplo 3.4. Determine o valor aproximado de f (0, 4) usando todos os pontos tabelados:

UEPA 37 Prof.Esp. Osmar Borges


Capı́tulo 3. Interpolação Polinomial 3.3. Polinômio Interpolador de Newton

k xk yk
0 0, 0 1, 008
1 0, 2 1, 064
2 0, 3 1, 125
3 0, 5 1, 343
4 0, 6 1, 512

Calculando as diferenças divididas temos


y1 − y0
δy0 = = 0, 28
x1 − x0
y2 − y1
δy1 = = 0, 610
x2 − x1
y3 − y2
δy2 = = 1, 09
x3 − x2
y4 − y3
δy3 = = 1, 69
x4 − x3
δy1 − δy2
δ 2 y0 = = 1, 1
x2 − x 0
δy2 − δy1
δ 2 y1 = = 1, 6
x3 − x 1
δy3 − δy2
δ 2 y2 = =2
x4 − x2
δ 2 y1 − δ 2 y0
δ 3 y0 = =1
x3 − x0
δ 2 y2 − δ 2 y1
δ 3 y0 = =1
x4 − x1
δ 3 y1 − δ 3 y0
δ 4 y0 = =0
x4 − x0
Então p(0, 4) = y0 + (0, 4 − x0 )δy0 + (0, 4 − x0 )(0.4 − x1 )δ 2 y0 + (0, 4 − x0 )(0.4 − x1 )(0, 4 −
x2 )δ 3 y0 + (0, 4 − x0 )(0.4 − x1 )(0, 4 − x2 )(0, 4 − x3 )δ 4 y0 = 1, 216
Montar a tabela fica como exercı́cio!
Nota: O erro é dado pela fórmula
f k+1 (αx )
Ek (x) = (x − x0 )(x − x1 ) . . . (x − xk ).
(k + 1)!
para α ∈ (x0 , xk ). Calcule o erro do exemplo anterior.

UEPA 38 Prof.Esp. Osmar Borges


Capı́tulo 3. Interpolação Polinomial 3.3. Polinômio Interpolador de Newton

Exercı́cio

1. Usando o método de Newton e de Lagrange, interpolar um polinômio do segundo


grau aos dados da tabela:

2. Determinar o polinômio interpolador para para a função tabelada abaixo.

UEPA 39 Prof.Esp. Osmar Borges


Capı́tulo 4

Integração Numérica

Seja f uma função contı́nua no intervalo [a, b] da qual se conhece uma primitiva
F . Então o valor da integral definida de f pode ser calculado usando a fórmula de Newton-
Leibnitz
Z b
f (x)dx = F (b) − F (a)
a
Em muitos casos a determinação de uma primitiva de f é muito ou às vezes até
impossı́vel de se obter. Além disso, em muitos problemas práticos, quase sempre se conhece
apenas uma tabela da função f e, para estes casos, a ideia de primitiva carece de signifi-
cado. Em situações como esta, os métodos de integração numérica são as ferramentas mais
adequadas para determinar aproximações para os valores das integrais definidas.

A aplicação dos métodos de integração numérica é obviamente necessária no caso


em que o valor de f (x) é conhecido em alguns pontos num intervalo [a, b], ou através de
um gráfico.

A solução numérica de uma integral simples é comumente chamada de quadra-


tura.

4.1 Quadratura por Interpolação


O método de quadratura por interpolação consiste em utilizar um polinômio
interpolante p(x) para aproximar o integrando f (x) no domı́nio de integração [a, b]. Desta
maneira
Z b
f (x)dx
a

40
Capı́tulo 4. Integração Numérica 4.1. Quadratura por Interpolação

pode ser aproximada por Z b


p(x)dx
a

Se o integrando f (x) é conhecido em k pontos distintos x0 , x1 , . . . , xk podemos


utilizar algum dos métodos desenvolvidos para encontrar um polinômio p(x) que interpole
f (xi ), i = 0, 1, . . . , k. Assim
Z b Z b
f (x)dx = p(x)dx + Rk (x)
a a
onde Rk é o resı́duo de interpolação da forma
b k
f k+1 (ϕx ) Y
Z
Rk (x) = (x − xi )dx
a (k + 1)! i=0

e a cada x, ϕ = ϕx é o número que torna verdadeira a equação


k
f k+1 (ϕx ) Y
f (x) = p(x) + (x − xi )
(k + 1)! i=0

De acordo com o método de interpolação de Lagrange, uma vez determinados os


polinômios Lk (x) e a interpolação
k
X
p(x) = f (xi ).Li (x)
i=0

a aproximação é dada por


Z b k
Z bX k
X Z b
p(x)dx = f (xi ).Li (x)dx = f (xi ). Li (x)dx
a a i=0 i=0 a

onde a segunda igualdade se deve ao fato de f (x) ser uma constante. A expressão anterior
pode ser reescrita como
Z b k
X
p(x)dx = Ci .f (xi )
a i=0

onde i = 0, 1, . . . , k, os valores f (xi ) são conhecidos e as constantes Ci são resultado da


integração
Z b
Li (x)dx
a

A aproximação da integral de f (x) é dada por

UEPA 41 Prof.Esp. Osmar Borges


Capı́tulo 4. Integração Numérica 4.1. Quadratura por Interpolação

Z b k
X
f (x)dx ≈ Ci .f (xi )
a i=0

Essa aproximação é denominada de fórmula de quadratura e, naturalmente, o


coeficiente Ci é dependente do método a ser utilizado.
R1 2
Exemplo 4.1. vamos aproximar a integral −2 1 e−x dx a partir da interpolação do inte-
2
grando em três pontos: x0 = − 12 , x1 = 0, x2 = 21 .

Solução:

Por Lagrange, os polinômios Li (xi ) são determinados por

(x − 0)(x − 12 ) x.(x − 12 )
L0 (x0 ) = = = 2x2 − x
(− 21 − 0)(− 21 − 21 ) (− 12 ).(−1)
(x + 21 )(x − 12 )
L1 (x1 ) = = −4x2 + 1
(0 + 12 )(0 − 12 )
(x + 21 )(x − 0)
L2 (x2 ) = = 2x2 + x
( 12 + 12 )
Portanto
1 1
1 i 21
Z Z h2
2 2
C0 = L0 (x)dx = (2x2 − x)dx = x3 − x2 1
− 12 − 12 3 2 −2

h 2.( 1 )3
1( 21 )2  2.(− 12 )3 1(− 21 )2 i 1
2
C0 = − − − =
3 2 3 2 6
Z 1 Z 1 h 4 i 12
2 2
2 3 2
C1 = L1 (x)dx = (−4x + 1)dx = − x + x 1 =
− 21 − 12 3 −2 3
Z 1 Z 1
2 2
h2 1 i 21 1
C2 = L2 (x)dx = (2x2 + x)dx = x3 + x2 1 =
− 12 − 12 3 2 −2 6
Então

Z 1 2
2 1 2 1 2 2 1 2 1 1 1 1
−x2 2
X
e dx ≈ e−x Ci = e−(− 2 ) . + e−(0) . + e−( 2 ) . = .(e− 4 ) + 4e0 + e− 4 )
− 12 i=0
6 3 6 6

1 1
= .(e− 4 + 2e0 ) = 0, 926266...
3

UEPA 42 Prof.Esp. Osmar Borges


Capı́tulo 4. Integração Numérica 4.2. Quadratura pelas Fórmulas de Newton-Cotes

4.2 Quadratura pelas Fórmulas de Newton-Cotes


Nas fórmulas de Newton-Cotes o polinômio que se aproxima de f (x) razoa-
velmente é um polinômio interpolador de f (x) em pontos de [a, b] igualmente espaçados.
Consideremos a partição do intervalo [a, b] em subintervalos, de comprimento h, [xi , xi+1 ],
(b − a)
i = 0, 1, . . . , k − 1. Assim, xi+1 − xi = h = .
k
As fórmulas fechadas de Newton-Cotes são fórmulas de integração do tipo x0 =
a, xk = b e

Z b Z xk k
X
f (x)dx = f (x)dx ≈ A0 .f (x0 ) + A1 .f (x1 ) + · · · + Ak .f (xk ) = Ai .f (xi )
a x0 i=0

sendo os coeficientes Ai determinados de acordo com o grau do polinômio aproximador.

Neste capı́tulo estudaremos duas fórmulas fechadas de Newton-Cotes: A Regra


dos Trapézios e A Regra de Simpson.

4.2.1 Regra dos Trapézios


Seja o intervalo finito [a, b] no eixo x que é particionado em k subintervalos
igualmente espaçados [xi , xi+1 ], com x0 = a, xk = b e hi = xi+1 − xi . Seja f uma função
contı́nua ou simplesmente Riemann integrável, cuja integral não se conhece.

Numericamente, a regra dos trapézios é obtida aproximando-se f por um polinômio


interpolador do 1◦ grau. Se usarmos a fórmula de Lagrange para expressar o polinômio
p1 (x) que interpola f (x) em x0 e x1 temos
Z b Z b=x1 Z x1 h
(x − x1 ) (x − x0 ) i
f (x)dx ≈ p1 (x)dx = f (x0 ) + f (x1 ) dx
a a=x0 x0 (x0 − x1 ) (x1 − x0 )
como h = x1 − x0 então x0 − x1 = −h, assim
Z b=x1 Z x1 h
(x − x1 ) (x − x0 ) i
p1 (x)dx = f (x0 ) + f (x1 ) dx = IT
a=x0 x0 −h h

assim
h
IT = [f (x0 ) + f (x1 )]
2
ou simplesmente
h
IT = (y0 + y1 )
2

UEPA 43 Prof.Esp. Osmar Borges


Capı́tulo 4. Integração Numérica 4.2. Quadratura pelas Fórmulas de Newton-Cotes

que é a área do trapézio de altura h = x1 − x0 e bases y0 e y1 .

Geometricamente temos

hi
A área de cada trapézio é dada por IT i = (yi + yi+1 ). A soma dessas áreas será
Rb 2
uma aproximação para a f (x)dx. Analiticamente a integral de f (x) normalmente como
aprendido no Cálculo.

O erro é dado pela fórmula

h3 00
E=− f (ϕ)
12
onde a ≤ ϕ ≤ b e |f 00 (ϕ)|max .
Exemplo 4.2. Calcular, pela regra dos trapézios e, depois, analiticamente, o valor de
Z 3,6
dx
I=
3 x
Observação:Use 5 casas decimais.

Solução:

Pela regra dos trapézios temos


h
IT = (y0 + y1 )
2
1
como y = e h = x1 − x0 tem-se
x
3, 6 − 3  1 1  0, 6  1 1 
IT = + = + = 0, 18333
2 3 3, 6 2 3 3, 6
Calculando o erro temos
h3
E = − f 00 (ϕ)
12

UEPA 44 Prof.Esp. Osmar Borges


Capı́tulo 4. Integração Numérica 4.2. Quadratura pelas Fórmulas de Newton-Cotes

2
onde f 00 (x) = . Assim
x3
h3 2
E=− .
12 ϕ3
2 2
Como 3 ≤ ϕ ≤ 3, 6 então |f 00 (ϕ)|max = 3 = 3 e assim
ϕ 3

(0, 6)3 2
E=− . = −1, 333.10−3
12 27
Logo
IT = 0, 18333 − 1, 333.10−3 = 0, 18200
Analiticamente temos
Z 3,6
1 3,6
dx = ln(x) = ln(3, 6) − ln(3) = 0, 18232

3 x 3

Regra dos Trapézios Composta


Dividindo o intervalo [a, b] em k subintervalos, pela regra dos trapézios, o re-
sultado, que será denotado por T(h) , é dado por
k−1 
X yi + yi+1 
T(hk ) = . .hi
i=0
2
b−a
como hi é constante temos h = , então
k
k−1 
X yi + yi+1 
T(hk ) = h .
i=0
2
ou
h
T(hk ) = (y0 + 2y1 + 2y2 + · · · + 2yk−1 + yk )
2
Exemplo 4.3. Calcular, pela regra dos trapézios o valor de
Z 3,6
dx
I=
3 x
considerando k = 6 e 4 casas decimais com arredondamento.

Solução:

UEPA 45 Prof.Esp. Osmar Borges


Capı́tulo 4. Integração Numérica 4.2. Quadratura pelas Fórmulas de Newton-Cotes

Temos que o número de intervalos é 6, logo o valor


3, 6 − 3
h= = 0, 1
6
A tabela abaixo mostra os valores a serem substituı́dos na fórmula (correspondentes às
operações feitas em (y0 + 2y1 + 2y2 + · · · + 2yk−1 + yk ) onde os ci são os coeficientes da
expressão):

h
T(h6 ) = (y0 + 2y1 + 2y2 + 2y3 + 2y4 + 2y5 + y6 )
2
0, 1
T(0,1) = (3, 6469) = 0, 182345
2
O erro é dado por
(b − a)3 00
E=− f (ϕ)
12k 2
Determine o erro do exemplo acima.

4.2.2 Regra de Simpson


A regra de Simpson é obtida aproximando-se f por um polinômio interpolador

de 2 grau, ou seja, uma parábola.

Numericamente podemos usar a fórmula de Lagrange para estabelecer a fórmula


de integração resultante da aproximação de f (x) por um polinômio de grau 2. Seja p2 (x)
o polinômio que interpola f (x) nos pontos x0 = a, x1 = x0 + h e x2 = x0 + 2h = b:

UEPA 46 Prof.Esp. Osmar Borges


Capı́tulo 4. Integração Numérica 4.2. Quadratura pelas Fórmulas de Newton-Cotes

Resolvendo a integral obtemos


Z x2
h
f (x)dx ≈ [f (x0 ) + 4f (x1 ) + f (x2 )]
x0 3

ou simplesmente
Z x2
h
f (x)dx ≈ (y0 + 4y1 + y2 )
x0 3
Geometricamente tem-se

O erro é dado por


h5 (4)
E=−
.f (ϕ)
90
para a ≤ ϕ ≤ b. Determine o erro do exemplo acima.

Regra de Simpson Composta


Aplicando a regra de Simpson repetidas vezes no intervalo [a, b] = [x0 , xk ].
Vamos supor que x0 , x1 , . . . , xk são pontos igualmente espaçados, h = xi+1 − xi , e k é par

UEPA 47 Prof.Esp. Osmar Borges


Capı́tulo 4. Integração Numérica 4.2. Quadratura pelas Fórmulas de Newton-Cotes

(isto é condição necessária pois cada parábola utilizará três pontos consecutivos). Assim
teremos:
Z b
h
f (x)dx ≈ S(hk ) = (y0 + 4y1 + 2y2 + 4y3 + 2y4 · · · + 2yk−2 + 4yk−1 + yk )
a 3
R1
Exemplo 4.4. Calcular uma aproximação para 0 ex usando a regra de simpson e k = 10.

Solução:
1−0
Temos que o número de intervalos é 10 logo h = = 0, 1. Então montemos a tabela
10
de iterações

Assim
0, 1 0
S(h10 ) = (e + 4e0,1 + 2e0,2 + 4e0,3 + 4e0,4 + · · · + 4e0,9 ) = 1, 71829
3
Analiticamente
Z 1 1
e = e = e1 − e0 = 1, 71828
x x
0 0
R1
Exemplo 4.5. Calcular uma aproximação para 0
(x2 + 1)dx por Simpsom e depois, ana-
liticamente, sendo k = 2.

Solução:
1−0
Como o número de intervalos é 2 logo temos h = = 0, 5. Assim temos
2
0, 5 0, 5
S(0, 5) = (1 + 4(1, 25) + 2) = .(8) = 1, 33333...
3 3
Analiticamente fica como exercı́cio!

UEPA 48 Prof.Esp. Osmar Borges


Capı́tulo 4. Integração Numérica 4.2. Quadratura pelas Fórmulas de Newton-Cotes

O erro aqui é dado por

(b − a)5 (4)
E=− f (ϕ)
180k 4
com a ≤ ϕ ≤ b. Calcule!

Exercı́cio
3
1. Seja [0, 2] um intervalo e seja x0 = 0, x1 = 1 e x2 = . Determine a fórmula de
2
quadratura interpoladora da função f (x).
R1
2. Considere 0 (2x + 3)dx pela regra dos trapézios e, depois, analiticamente, com k = 1
e 4 casas decimais com arredondamento. Calcule o erro.
R2
3. Calcular 1 x ln(x)dx pela regra dos trapézios, considerando diversos valores para
k = 4 e, depois, analiticamente. Calcule o erro.
π
4. Determine uma aproximação de considerando que
4
Z 1
π dx
= 2
4 0 1+x

e usando a regra dos trapézios com k = 10.


π
5. Determine uma aproximação de considerando que
4
Z 1
π dx
= 2
4 0 1+x

e usando a regra de Simpson com k = 10.

6. Qual o erro máxim o cometido ao calcularmos


Z 1
2
I= e−x
0

usando a fórmula de Simpson e k = 10?

7. Usando a regra dos trapézios e analiticamente determine o valor da integral e o erro


cometido de:
4,5
R 1
a) I = 2
dx
4 x
R1 cos x
b) I = dx
0 1+x

UEPA 49 Prof.Esp. Osmar Borges

You might also like