Buscar

Aproximação de População Brasileira

Prévia do material em texto

3-
QUESTÃO 4 
a) 
 
SPLICE CÚBICA: 
 
 
 
POLINOMIO DE APROXIMAÇÃO: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
APROXIMAÇÃO INTERPOLAÇÃO: 
 
 
 
 
Segundo o IBGE, a população no Brasil no ano 2000 foi de 169.799.170, ou seja 169,799170 
milhões, portanto o que melhor se aproximou do valor real foi a aproximação Splice cúbica que 
apresentou 163,139 milhões de habitantes. 
 
b) 
 Interpolação polinomial: 
 
import numpy as np 
 
# Dados de entrada 
ano = [1872, 1890, 1900, 1920, 1940, 1950, 1960, 1970, 1980, 1991] 
habitantes = [9.9, 14.3, 17.4, 30.6, 41.2, 51.9, 70.2, 93.1, 119.0, 146.2] 
 
# Interpolação polinomial 
coeficientes = np.polyfit(ano, habitantes, len(ano) - 1) 
p = np.poly1d(coeficientes) 
 
# Estimando quando a população ultrapassa 100 milhões 
ano_estimado = np.arange(1872, 2000, 1) 
populacao_estimada = p(ano_estimado) 
 
for i, populacao in enumerate(populacao_estimada): 
 if populacao > 100: 
 ano_ultrapassou_100_milhoes = ano_estimado[i] 
 break 
 
print(f"A população ultrapassou 100 milhões em torno do ano 
{ano_ultrapassou_100_milhoes}") 
A população ultrapassou 100 milhões em torno do ano 1973 
 
 
SPLICE CÚBICA: 
 
import numpy as np 
from scipy.interpolate import CubicSpline 
 
# Dados de entrada 
ano = [1872, 1890, 1900, 1920, 1940, 1950, 1960, 1970, 1980, 1991] 
habitantes = [9.9, 14.3, 17.4, 30.6, 41.2, 51.9, 70.2, 93.1, 119.0, 146.2] 
 
# Criando a função de interpolação cúbica 
cs = CubicSpline(ano, habitantes) 
 
# Estimando quando a população ultrapassa 100 milhões 
ano_estimado = np.arange(1872, 2000, 1) 
populacao_estimada = cs(ano_estimado) 
 
for i, populacao in enumerate(populacao_estimada): 
 if populacao > 100: 
 ano_ultrapassou_100_milhoes = ano_estimado[i] 
 break 
 
print(f"A população ultrapassou 100 milhões em torno do ano 
{ano_ultrapassou_100_milhoes}") 
 
A população ultrapassou 100 milhões em torno do ano 1973 
 
MÉTODO DE APROXIMAÇÃO: 
 
import numpy as np 
 
# Dados de entrada 
ano = [1872, 1890, 1900, 1920, 1940, 1950, 1960, 1970, 1980, 1991] 
habitantes = [9.9, 14.3, 17.4, 30.6, 41.2, 51.9, 70.2, 93.1, 119.0, 146.2] 
 
# Aproximação polinomial 
coeficientes = np.polyfit(ano, habitantes, 3) 
p = np.poly1d(coeficientes) 
 
# Estimando quando a população ultrapassa 100 milhões 
ano_estimado = np.arange(1872, 2000, 1) 
populacao_estimada = p(ano_estimado) 
 
for i, populacao in enumerate(populacao_estimada): 
 if populacao > 100: 
 ano_ultrapassou_100_milhoes = ano_estimado[i] 
 break 
 
print(f"A população ultrapassou 100 milhões em torno do ano {ano_ultrapassou_100_milhoes}") 
 
A população ultrapassou 100 milhões em torno do ano 1974 
 A população brasileira em 1972 era de 99,86 mi e em 1973 era 102,26 mi, portanto, o 
Brasil ultrapassou 100 milhões de habitantes em 1973, ou seja, a interpolação polinomial, e 
aproximação foram as mais precisas e acertaram o ano. 
	Aps2 - Cálculo Numerico.pdf
	Imagem4
	Aps2 - Cálculo Numerico
	QUESTÃO 4