calculator-huggoxbyte

Crates.iocalculator-huggoxbyte
lib.rscalculator-huggoxbyte
version0.1.0
created_at2025-08-15 19:53:37.84487+00
updated_at2025-08-15 19:53:37.84487+00
descriptionUma biblioteca de calculadora com u32
homepage
repositoryhttps://github.com/HuggOxByte/calculator-HuggOxByte
max_upload_size
id1797413
size7,273
Huggo Oliveira (Hugg0xByte)

documentation

README

🧮 Calculator-HuggOxByte

Uma biblioteca de calculadora simples e eficiente escrita em Rust, desenvolvida como projeto de estudo para aprender a linguagem.

📋 Sobre o Projeto

Este projeto implementa operações matemáticas básicas usando tipos u32 (inteiros sem sinal de 32 bits), demonstrando conceitos fundamentais de Rust como:

  • Módulos e organização de código
  • Funções públicas e privadas
  • Tratamento de casos especiais (divisão por zero, subtração com resultado negativo)
  • Testes unitários e de integração
  • Estrutura de projeto com Cargo

🚀 Funcionalidades

Operações Básicas (calc1.rs)

  • Soma (add): Adição simples de dois números
  • Subtração (sub): Subtração com proteção contra resultado negativo (retorna 0)

Operações Avançadas (calc2.rs)

  • Multiplicação (multiply): Multiplicação de dois números
  • Divisão (rate): Divisão com proteção contra divisão por zero (retorna 0)

🛠️ Como Usar

Pré-requisitos

  • Rust instalado (versão 1.70+)
  • Cargo (gerenciador de pacotes do Rust)

Instalação e Execução

  1. Clone o repositório:
git clone https://github.com/HuggOxByte/calculator-HuggOxByte.git
cd calculator-HuggOxByte
  1. Execute o programa principal:
cargo run
  1. Execute os testes:
cargo test
  1. Compile o projeto:
cargo build

Uso como Biblioteca

use calculator_HuggOxByte::calc1::{add, sub};
use calculator_HuggOxByte::calc2::{multiply, rate};

fn main() {
    let resultado_soma = add(10, 5);        // 15
    let resultado_sub = sub(10, 3);         // 7
    let resultado_mult = multiply(4, 6);    // 24
    let resultado_div = rate(20, 4);        // 5
    
    println!("Resultados: {}, {}, {}, {}", 
             resultado_soma, resultado_sub, resultado_mult, resultado_div);
}

📁 Estrutura do Projeto

calculator-HuggOxByte/
├── src/
│   ├── lib.rs          # Biblioteca principal e módulos
│   ├── calc1.rs        # Operações básicas (soma, subtração)
│   ├── calc2.rs        # Operações avançadas (multiplicação, divisão)
│   └── main.rs         # Programa de exemplo
├── tests/
│   └── integration_testes.rs  # Testes de integração
├── Cargo.toml          # Configurações e dependências
└── README.md           # Este arquivo

🧪 Testes

Testes Unitários

Os testes unitários estão integrados nos módulos principais:

cargo test

Testes de Integração

Testes separados para verificar a integração entre módulos:

cargo test --test integration_testes

🔧 Desenvolvimento

Adicionando Novas Funcionalidades

  1. Crie funções no módulo apropriado (calc1.rs ou calc2.rs)
  2. Adicione testes unitários
  3. Atualize os testes de integração se necessário
  4. Execute cargo test para verificar

Estrutura de Módulos

  • calc1.rs: Operações matemáticas básicas
  • calc2.rs: Operações matemáticas mais complexas
  • lib.rs: Exporta todos os módulos para uso externo

📝 Licença

Este projeto está licenciado sob a licença MIT - veja o arquivo LICENSE para detalhes.

👨‍💻 Autor

HuggOxByte - GitHub - huggo.oliveira1@gmail.com

🤝 Contribuições

Contribuições são bem-vindas! Sinta-se à vontade para:

  • Reportar bugs
  • Sugerir novas funcionalidades
  • Enviar pull requests
  • Melhorar a documentação

📚 Recursos de Aprendizado

Este projeto foi criado para estudar:


Se este projeto foi útil para você, considere dar uma estrela no repositório!

Commit count: 0

cargo fmt