Prévia do material em texto
Desenvolver um código fonte em Python com banco de dados para gerenciar um parque de diversões voltado para crianças envolve diversos aspectos importantes, desde a gestão de atrações até a segurança dos visitantes. Vamos explorar como isso pode ser estruturado: ### Estrutura do Sistema #### Banco de Dados Para começar, o sistema precisa de um banco de dados para armazenar informações sobre as atrações, visitantes, funcionários e operações diárias. Vamos considerar um modelo básico de banco de dados utilizando SQLite, ideal para pequenas aplicações: ```python import sqlite3 # Conectar ao banco de dados (ou criar um novo se não existir) conn = sqlite3.connect('parque_infantil.db') cursor = conn.cursor() # Tabelas do banco de dados cursor.execute(''' CREATE TABLE IF NOT EXISTS atracoes ( id INTEGER PRIMARY KEY, nome TEXT NOT NULL, capacidade INTEGER, idade_minima INTEGER, altura_minima REAL ) ''') cursor.execute(''' CREATE TABLE IF NOT EXISTS visitantes ( id INTEGER PRIMARY KEY, nome TEXT NOT NULL, idade INTEGER, altura REAL, acompanhante BOOLEAN, dinheiro INTEGER ) ''') # Mais tabelas podem ser adicionadas para funcionários, vendas de ingressos, etc. conn.commit() ``` #### Funcionalidades do Sistema 1. **Cadastro de Atrações**: O sistema permite registrar novas atrações especificando nome, capacidade máxima de visitantes, idade mínima e altura mínima permitida. 2. **Cadastro de Visitantes**: Cada visitante é registrado com nome, idade, altura, se está acompanhado por um adulto, e o valor de dinheiro que possuem para gastar no parque. 3. **Controle de Acesso**: Antes de permitir que um visitante acesse uma atração, o sistema verifica se atende aos requisitos de idade e altura mínima. 4. **Venda de Ingressos**: Caso o parque cobre por atração específica ou ingresso geral, é possível registrar vendas e gerenciar o fluxo de caixa. 5. **Relatórios e Estatísticas**: O sistema pode gerar relatórios diários, semanais ou mensais sobre o número de visitantes, atrações mais populares, receita gerada, entre outros dados relevantes para a gestão do parque. ### Exemplo de Implementação Vamos simular parte do código para demonstrar como algumas funcionalidades poderiam ser implementadas: ```python class ParqueDiversoes: def __init__(self, nome): self.nome = nome self.conn = sqlite3.connect('parque_infantil.db') self.cursor = self.conn.cursor() def cadastrar_atracao(self, nome, capacidade, idade_minima, altura_minima): self.cursor.execute(''' INSERT INTO atracoes (nome, capacidade, idade_minima, altura_minima) VALUES (?, ?, ?, ?) ''', (nome, capacidade, idade_minima, altura_minima)) self.conn.commit() print(f'Atração {nome} cadastrada com sucesso.') def cadastrar_visitante(self, nome, idade, altura, acompanhante, dinheiro): self.cursor.execute(''' INSERT INTO visitantes (nome, idade, altura, acompanhante, dinheiro) VALUES (?, ?, ?, ?, ?) ''', (nome, idade, altura, acompanhante, dinheiro)) self.conn.commit() print(f'Visitante {nome} cadastrado com sucesso.') def verificar_acesso_atracao(self, id_visitante, id_atracao): # Implementar lógica para verificar se o visitante pode acessar a atração pass # Exemplo de uso do sistema: parque = ParqueDiversoes('Parque Infantil Feliz') parque.cadastrar_atracao('Carrossel', 20, 3, 0.8) # Exemplo de cadastro de atração parque.cadastrar_visitante('Joãozinho', 5, 1.0, True, 50) # Exemplo de cadastro de visitante ``` ### Considerações Finais Este exemplo básico ilustra como um sistema de gerenciamento para um parque de diversões infantil pode ser estruturado em Python com uso de banco de dados SQLite. Para um sistema real, seria necessário considerar aspectos adicionais como segurança, otimização de consultas ao banco de dados, interface gráfica para interação com os usuários, entre outros. A complexidade pode aumentar conforme mais funcionalidades são adicionadas, mas a estrutura básica aqui descrita serve como um bom ponto de partida.