Este repositório reúne implementações práticas de métodos numéricos e conceitos de Cálculo desenvolvidos durante a disciplina Matemática para Computação (Cálculo 1) do 1º período.
O objetivo principal é aplicar teoria matemática na prática, transformando conceitos abstratos em soluções computacionais para problemas reais, utilizando Python e suas poderosas bibliotecas científicas.
📁 Localização: /MetodoBissecao
Programa em Python que encontra uma raiz aproximada de uma função utilizando o Método da Bisseção.
O Método consiste em analisar dois intervalos, calcular a média entre eles, comparar os resultados e tentar se aproximar o mais perto possível da raiz exata através de iterações sucessivas.
-
O usuário insere:
- Uma função matemática
- Um intervalo inicial A
- Um intervalo inicial B
- Um critério de parada (tolerância, ex.: 0.01)
-
O programa calcula:
- A média entre os dois pontos (ponto médio)
- A imagem (valor da função) nos pontos A, B e no ponto médio
- Compara se as imagens são positivas ou negativas
-
Processo iterativo:
- Substitui os intervalos baseado nas comparações
- Repete o cálculo em loop
- Para quando a imagem do ponto médio é menor ou igual ao critério de parada
- Baixe o arquivo
metodoBissecao.pyno seu computador - Abra o arquivo com sua IDE de preferência
- Instale as bibliotecas necessárias:
pip install matplotlib sympy numpy- Execute o código e insira as instruções solicitadas
💡 Dica: Para exemplos de funções, consulte o arquivo metodoBissecao-exemplos.txt.
- Condicionais (
if,elifeelse) - Estruturas de repetição (
while) - Listas
[] - Funções (
def) - Bibliotecas externas:
- Matplotlib - Visualização gráfica
- SymPy - Matemática simbólica
- NumPy - Computação numérica
Este projeto foi uma atividade avaliativa em grupo da cadeira de Matemática para Computação do 1º período. O grupo tinha 3 pessoas e cada uma ficou responsável por partes específicas do código. Foram adicionadas funcionalidades extras, como representação gráfica e melhorias na interface.
OBS.: Este foi um projeto inicial, desenvolvido antes da adoção do Git/GitHub.
📁 Localização: /AreaPiscina
Aplicação em Python que calcula a área de piscinas com formatos irregulares utilizando métodos numéricos avançados. O programa permite inserir pontos que definem o contorno da piscina e calcula a área através de diferentes métodos matemáticos, comparando resultados e gerando visualizações gráficas.
Desenvolvido em grupo como aplicação prática dos conhecimentos de Cálculo 1.
- Captura da Imagem: Utilização de uma imagem aérea de uma piscina real
- Posicionamento no Plano Cartesiano: A imagem é posicionada em um sistema de coordenadas
- Marcação de Pontos: Identificação de pontos das extremidades (acima e abaixo do eixo X)
- Entrada de Dados: Os pontos são inseridos no programa
- Geração da Função: Cálculo da função interpoladora usando Lagrange
- Cálculo da Área: Integral definida para obter a área
- Comparação: Cálculo paralelo usando o Método do Trapézio
- Gera um polinômio interpolador que passa por todos os pontos fornecidos
- Transforma medições pontuais em uma função matemática contínua
- Arquivo:
lagrange.py
- Por pontos: Regra do trapézio básica entre pontos consecutivos
- Por função: Integra o polinômio de Lagrange (integral definida)
- Fornece resultado preciso baseado na função contínua
- Arquivo:
integral.py
- Trapézio Simples: Para 2 pontos
- Trapézio Composto: Para múltiplos pontos
- Calcula área diretamente dos pontos, sem interpolação
- Permite comparação de precisão
- Arquivo:
trapezio.py
- Gráfico da área calculada por integral (com preenchimento)
- Gráfico dos trapézios formados
- Facilita comparação visual entre métodos
- Arquivo:
grafico. py
AreaPiscina/
│
├── main.py # Arquivo principal (interface e fluxo do programa)
├── lagrange.py # Interpolação polinomial de Lagrange
├── integral.py # Cálculo de área por integral
├── trapezio.py # Método do Trapézio (simples e composto)
├── grafico.py # Visualizações com Matplotlib
└── Exemplos/ # Pasta com exemplos de uso
- Clone o repositório:
git clone https://github.com/LarissaGiovanna/math.git
cd math/AreaPiscina- Instale as dependências:
pip install sympy numpy matplotlib- Execute o programa:
python main.py- Siga as instruções no terminal:
- Informe a quantidade de pontos acima e abaixo do eixo X
- Digite as coordenadas (x, y) de cada ponto
- Escolha o método de cálculo:
i- Integralt- Método do Trapézioa- Ambos (com comparação)
Quantos pares ordenados (x, y) teremos?
[X = comprimento da piscina | Y = largura da piscina]
Quantidade de pontos ACIMA do eixo X: 3
Quantidade de pontos ABAIXO do eixo X: 3
Digite os pontos que estão ACIMA do eixo X
x1 (comprimento): 0
y1 (largura): 2
x2 (comprimento): 2
y2 (largura): 4
x3 (comprimento): 4
y3 (largura): 2
Digite os pontos que estão ABAIXO do eixo X
x1 (comprimento): 0
y1 (largura): -1
x2 (comprimento): 2
y2 (largura): -2
x3 (comprimento): 4
y3 (largura): -1
De que forma que deseja calcular a área?
i - Integral
t - Método do Trapézio
a - Ambas as opções
Sua opção: a
✅ Cálculo de área por diferentes métodos numéricos
✅ Suporte para formas irregulares (pontos acima e abaixo do eixo X)
✅ Geração automática de polinômios interpoladores
✅ Comparação entre métodos (Integral vs. Trapézio)
✅ Visualização gráfica interativa
✅ Interface de linha de comando intuitiva
✅ Análise de diferença de precisão entre métodos
Interpolação de Lagrange:
P(x) = Σ[i=0 até n] yi · Li(x)
Integral Definida:
A = ∫[a até b] P(x) dx
Método do Trapézio Composto:
A ≈ (h/2) · [f(x0) + 2·Σf(xi) + f(xn)]
- Polinômios interpoladores (quando usa Lagrange)
- Área calculada por cada método escolhido
- Diferença entre métodos (quando escolhe opção "a")
- Gráficos interativos mostrando:
- Curvas interpoladas
- Áreas preenchidas
- Trapézios formados
- Comparação visual e numérica
Este projeto foi muito importante e interessante, pois permitiu:
- ✨ Aplicar teoria matemática na prática
- 💻 Integrar programação e resolução de problemas reais
- 📊 Visualizar graficamente conceitos abstratos de Cálculo
- 🤝 Trabalhar em equipe no desenvolvimento de software
- 🔍 Comparar diferentes métodos numéricos e entender suas vantagens
|
Python 3.x |
![]() SymPy Matemática Simbólica |
NumPy Computação Numérica |
Matplotlib Visualização de Dados |
- Python 3.x instalado
- pip (gerenciador de pacotes Python)
pip install sympy numpy matplotlibMétodo da Bisseção:
cd MetodoBissecao
python metodoBissecao.pyAreaPiscina:
cd AreaPiscina
python main.py- Larissa Giovanna - @LarissaGiovanna
- Julia Tenório Calado - @juliatenoriocalado
- Gabriel Rios - @RiosGabri
- Luis Felipe Higino - @LuisHigino
- Larissa Giovanna - @LarissaGiovanna
- Julia Tenório Calado - @juliatenoriocalado
- Gabriel Rios - @RiosGabri
Projetos desenvolvidos como parte da disciplina Matemática para Computação (Cálculo 1)
Contribuições são bem-vindas! Sinta-se à vontade para:
- 🐛 Reportar bugs
- 💡 Sugerir novas funcionalidades
- 📝 Melhorar a documentação
- 🔧 Otimizar algoritmos existentes
Para contribuir:
- Faça um fork do projeto
- Crie uma branch para sua feature (
git checkout -b feature/NovaFuncionalidade) - Commit suas mudanças (
git commit -m 'Adiciona nova funcionalidade') - Push para a branch (
git push origin feature/NovaFuncionalidade) - Abra um Pull Request
⭐ Se este projeto foi útil ou se apenas achou interessante para você, considere dar uma estrela no repositório!
