Você está na página 1de 2

DEPARTAMENTO DE INFORMATICA

a
1 Lista de Algoritmos Num
ericos

1. Leia o livro texto e refaca os exerccios propostos em sala e resolvidos no livro.


2. Suponha que se queira calcular
In =

xn ex1 dx
0

para um valor inteiro n > 0, qualquer.


Usando integracao por partes e possvel obter as seguintes relacoes:
(1) Ik = 1 kIk1
(2) Ik1 = (1 Ik )/k
(a) Simulando uma maquina que opere com 3 dgitos significativos na mantissa, base 10, e expoente na faixa de -20 a 20, obter o valor de I8 com a
recorrencia (1) acima. Use arredondamento para o mais proximo. Mostre os
valores intermediarios. Assuma que valor de e I1 = e1 = 0.367.
(b) Simulando a mesma maquina obter o valor de I8 via Ik1 = (1 Ik )/k
partindo de I12 = 1/13 e em seguida partindo de I12 = 0 Use arredondamento
para o mais proximo. Mostre os valores intermediarios.
(c) Dados n e I1 , escreva um algoritmo (em pseudo-codigo) que calcule In ,
usando recorrencia (1): Ik = 1 kIk1 partindo de I1
(d) Escreva um algoritmo que calcule In usando recorrencia (2), partindo de
partindo de Ip , com p > n.
(e) Implemente os dois algoritmos em uma linguagem de programacao e rode
os programas diversas vezes para diferentes valores de n e diversos valores de
entrada iniciais (tanto para I1 quanto para Ip , com p > n).
3. Sabe-se que e1 e um valor numerico dada pela seguinte expressao

X
1
e =
k!
k=0
1

que pode ser obtido aproximadamente ao tomar apenas alguns termos do somatorio, atraves de
N
X
1
1
e
k!
k=0
Um aluno escreveu o algoritmo abaixo (em pseudo-linguagem) para obter e1
usando os seis primeiros termos do somatorio (ou seja, para N=5).

INICIO
s=1
Para i de 1 at
e 5
s = s + ( 1.0/ fatorial(i) )
Escreva (O valor Intermediario eh :,
Fim_Para
e=s
Escreva (O valor de e (final) eh :,
e)
FIM

s)

(a) Simulando uma maquina que opere com 5 dgitos significativos na mantissa, base 10, e expoente na faixa de -6 a 6, mostre o valor de s que sera
exibido a cada passo da repeticao (ou seja no loop Para). Obs: Imagine que
fatorial(i) e uma funcao pronta (ja existente), que retorna o valor exato do
fatorial (nao e preciso simular estas operacoes). Assim ao ser fornecido um
valor para i, o seu fatorial e retornado. Use arredondamento por falta. Mostre
os valores intermediarios.
(b) Calcule o erro relativo contido na aproximacao obtida na letra a. Considere o valor exato como sendo e1 = 2, 7182815.
(c) Represente em uma reta, a regiao de Underflow e Overflow da maquina.
Indique, precisamente, os valores das fronteiras das regioes citadas.
4. Faca um algoritmo (em pseudo-codigo) para ler dois vetores X e Y de dimensao
n e obter a sua soma Z = X + Y . Implemente, em seguida, em uma liguagem
de programacao.
5. Faca um algoritmo (em pseudo-codigo) para ler uma matriz de dimensao n
e verificar se essa matriz e diagonalmente dominante, isto e, se a seguinte
condicao e satisfeita:
|aii | >

n
X

j=1,j6=i

|aij |, i = 1,2,. . . ,n

Você também pode gostar