Algoritimo usar do * para qual negocio Previsão de vendas / demanda

  Previsão de vendas / demanda Exemplos: Varejo, e-commerce, produção industrial, estoque. Algoritmos recomendados: Regressão Linear / Regressão Ridge ARIMA / SARIMA (para séries temporais) Facebook Prophet (bom para dados sazonais) XGBoost / LightGBM (para modelos mais robustos) ✅ 2. Classificação de clientes / risco Exemplos: Bancos (crédito), seguradoras (risco), marketing (perfil de cliente). Algoritmos recomendados: Árvore de decisão / Random Forest Logistic Regression XGBoost / CatBoost Rede Neural (caso tenha muitos dados) ✅ 3. Recomendação de produtos / conteúdo Exemplos: E-commerce, Netflix, Spotify, marketplaces. Algoritmos recomendados: Filtragem Colaborativa (ex: ALS, KNN) Modelos baseados em conteúdo (TF-IDF, Word2Vec) Redes neurais (Deep Learning) para modelos mais avançados Matrix Factorization / LightFM ✅ 4. Detecção de fraude ou anomalias Exemplos: Bancos, e-commerce, seguros, telecom. Algoritmos rec...

Aqui está um algoritmo avançado de vending machine em Python, com interface baseada em texto, que inclui:

 Aqui está um algoritmo avançado de vending machine em Python, com interface baseada em texto, que inclui:

  • Múltiplas categorias de produtos (bebidas, snacks, doces, etc.)

  • Estoque e verificação de disponibilidade

  • Inserção de dinheiro com verificação de troco

  • Registro de vendas e simulação de recibo

  • Menu interativo via terminal


🧠 Estrutura geral

python
import time # Produtos organizados por categoria produtos = { "Bebidas": { "Coca-Cola": {"preco": 4.50, "estoque": 5}, "Água": {"preco": 2.00, "estoque": 10}, "Suco": {"preco": 3.75, "estoque": 6} }, "Snacks": { "Chips": {"preco": 3.00, "estoque": 8}, "Pipoca": {"preco": 2.50, "estoque": 4} }, "Doces": { "Chocolate": {"preco": 2.80, "estoque": 7}, "Bala": {"preco": 1.20, "estoque": 20} } } # Histórico de vendas registro_vendas = [] def exibir_produtos(): print("\nProdutos disponíveis:\n") for categoria, itens in produtos.items(): print(f"== {categoria} ==") for nome, info in itens.items(): status = "ESGOTADO" if info['estoque'] == 0 else f"R${info['preco']:.2f} ({info['estoque']} un.)" print(f" - {nome}: {status}") print() def selecionar_produto(): nome_produto = input("Digite o nome do produto que deseja comprar: ").strip() for categoria in produtos.values(): if nome_produto in categoria: produto = categoria[nome_produto] if produto['estoque'] == 0: print("Desculpe, produto esgotado.") return None, 0 else: return nome_produto, produto['preco'] print("Produto não encontrado.") return None, 0 def inserir_dinheiro(preco): total_inserido = 0 print(f"Preço do produto: R${preco:.2f}") while total_inserido < preco: try: valor = float(input(f"Insira dinheiro (faltam R${preco - total_inserido:.2f}): R$")) if valor <= 0: print("Insira um valor positivo.") continue total_inserido += valor except ValueError: print("Valor inválido.") troco = total_inserido - preco if troco > 0: print(f"Troco: R${troco:.2f}") return True def atualizar_estoque(nome_produto): for categoria in produtos.values(): if nome_produto in categoria: categoria[nome_produto]['estoque'] -= 1 registro_vendas.append(nome_produto) return def imprimir_recibo(produto, preco): print("\nGerando recibo...") time.sleep(1) print("=" * 20) print(" VENDING MACHINE") print(f"Produto: {produto}") print(f"Valor: R${preco:.2f}") print("Obrigado por sua compra!") print("=" * 20) print() def menu_principal(): while True: print("\n--- MÁQUINA DE VENDAS ---") exibir_produtos() produto, preco = selecionar_produto() if produto: if inserir_dinheiro(preco): atualizar_estoque(produto) imprimir_recibo(produto, preco) op = input("Deseja comprar outro produto? (s/n): ").lower() if op != 's': break def mostrar_relatorio(): print("\n--- RELATÓRIO DE VENDAS ---") total = 0 vendas = {} for item in registro_vendas: vendas[item] = vendas.get(item, 0) + 1 for item, qtd in vendas.items(): for categoria in produtos.values(): if item in categoria: preco = categoria[item]["preco"] subtotal = preco * qtd print(f"{item}: {qtd} un. - R${subtotal:.2f}") total += subtotal print(f"Total arrecadado: R${total:.2f}") # Execução if __name__ == "__main__": menu_principal() mostrar_relatorio()

✅ Recursos avançados incluídos:

  • ✅ Validação de entrada do usuário

  • ✅ Troco automático

  • ✅ Controle de estoque por item

  • ✅ Relatório final de vendas

  • ✅ Recibo estilizado no terminal

Comments

Popular posts from this blog

Déficit de profissionais de TI ameaça startups no Brasil