Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

0
respostas

Faça como eu fiz: utilizando cadeias de Markov

import numpy as np
estados = ["Ensolarado", "Nublado", "Chuvoso"]
matriz_transicao = np.array([
[0.7, 0.2, 0.1],
[0.3, 0.4, 0.3],
[0.2, 0.3, 0.5]
])

def prever_clima(estado_inicial, dias):
estado_atual = estado_inicial

print(f"Dia 1: {estado_atual}")

for dia in range(2, dias + 1):
    indice_atual = estados.index(estado_atual)

    proximo_estado = np.random.choice(
        estados,
        p=matriz_transicao[indice_atual]
    )

    print(f"Dia {dia}: {proximo_estado}")

    estado_atual = proximo_estado

prever_clima("Ensolarado", 7)

Dia 1: Ensolarado
Dia 2: Nublado
Dia 3: Nublado
Dia 4: Ensolarado
Dia 5: Ensolarado
Dia 6: Ensolarado
Dia 7: Ensolarado