{"id":24887189,"url":"https://github.com/ramsyana/Zig-Math-Algorithms","last_synced_at":"2025-10-16T05:31:39.089Z","repository":{"id":267914418,"uuid":"902740352","full_name":"ramsyana/Zig-Math-Algorithms","owner":"ramsyana","description":"A collection of mathematical algorithms implemented in Zig, designed to address specific mathematical problems with simple command-line interfaces.","archived":false,"fork":false,"pushed_at":"2025-08-05T03:16:32.000Z","size":152,"stargazers_count":8,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-05T05:22:38.834Z","etag":null,"topics":["algorithms","math","zig","ziglang"],"latest_commit_sha":null,"homepage":"","language":"Zig","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ramsyana.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-12-13T07:10:11.000Z","updated_at":"2025-08-05T03:16:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"3408bf52-5e8a-4656-8086-2a0edd0c2f7f","html_url":"https://github.com/ramsyana/Zig-Math-Algorithms","commit_stats":null,"previous_names":["ramsyana/zig-math-algorithms"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ramsyana/Zig-Math-Algorithms","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ramsyana%2FZig-Math-Algorithms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ramsyana%2FZig-Math-Algorithms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ramsyana%2FZig-Math-Algorithms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ramsyana%2FZig-Math-Algorithms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ramsyana","download_url":"https://codeload.github.com/ramsyana/Zig-Math-Algorithms/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ramsyana%2FZig-Math-Algorithms/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279159536,"owners_count":26116492,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-16T02:00:06.019Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithms","math","zig","ziglang"],"created_at":"2025-02-01T16:01:08.188Z","updated_at":"2025-10-16T05:31:39.070Z","avatar_url":"https://github.com/ramsyana.png","language":"Zig","readme":"# Zig Math Algorithms\n\nA collection of mathematical algorithms implemented in Zig, designed for educational purposes and showcasing Zig's performance.\n\n## 🚀 Table of Contents\n\n- [Zig Math Algorithms](#zig-math-algorithms)\n  - [🚀 Table of Contents](#-table-of-contents)\n  - [🔢 Available Algorithms](#-available-algorithms)\n  - [🚀 Prerequisites](#-prerequisites)\n  - [🔧 Running the Algorithms](#-running-the-algorithms)\n  - [📚 Purpose](#-purpose)\n  - [🤝 Contributing](#-contributing)\n  - [📧 Contact](#-contact)\n\n## 🔢 Available Algorithms\n\n\n| Algorithm | Description | Command | Difficulty |\n|-----------|-------------|---------|------------|\n| **Basic Number Operations** |\n| Armstrong Number Checker | Verifies Armstrong numbers | `zig run src/algorithm/math/is_armstrong.zig` | Easy |\n| Digital Root | Recursive digit sum calculation | `zig run src/algorithm/math/digital_root.zig` | Easy |\n| Happy Number Checker | Checks if a number is happy | `zig run src/algorithm/math/happy_number.zig` | Easy |\n| Integer Square Root | Finds floor(√n) | `zig run src/algorithm/math/integer_sqrt.zig` | Easy |\n| Leap Year Checker | Determines if year is leap | `zig run src/algorithm/math/leap_year_checker.zig` | Easy |\n| Palindrome Number Checker | Checks if a number is a palindrome | `zig run src/algorithm/math/palindrome_number.zig` | Easy |\n| Power of Two Checker | Checks if number is 2ⁿ | `zig run src/algorithm/math/power_of_two.zig` | Easy |\n| Prime Number Checker | Checks if a number is prime | `zig run src/algorithm/math/prime_checker.zig` | Easy |\n| Reverse Number | Reverses digits of a number | `zig run src/algorithm/math/reverse_number.zig` | Easy |\n| Sum of Digits | Calculates digit sum | `zig run src/algorithm/math/sum_of_digits.zig` | Easy |\n| **Number Theory** |\n| Abundant/Deficient Checker | Checks if number is abundant/deficient | `zig run src/algorithm/math/abundant_deficient_checker.zig` | Easy |\n| Perfect Number Checker | Checks if a number is perfect | `zig run src/algorithm/math/perfect_number_checker.zig` | Easy |\n| Strong Number Checker | Sum of digit factorials check | `zig run src/algorithm/math/strong_number_checker.zig` | Easy |\n| GCD and LCM Calculator | Finds GCD and LCM | `zig run src/algorithm/math/gcd_lcm_calculator.zig` | Medium |\n| Prime Counter | Counts primes up to n | `zig run src/algorithm/math/prime_counter.zig` | Medium |\n| Prime Factorization | Computes prime factors | `zig run src/algorithm/math/prime_factorization.zig` | Medium |\n| Euler's Totient Function | Counts coprime numbers | `zig run src/algorithm/math/euler_totient.zig` | Hard |\n| **Sequences and Series** |\n| Factorial Calculator | Calculates n! | `zig run src/algorithm/math/factorial.zig` | Easy |\n| Fibonacci Calculator | Calculates nth Fibonacci | `zig run src/algorithm/math/fibonacci.zig` | Easy |\n| Lucas Numbers | Generates Lucas numbers | `zig run src/algorithm/math/lucas_numbers.zig` | Easy |\n| Sequence Generator | Arithmetic/Geometric sequences | `zig run src/algorithm/math/sequence_generator.zig` | Easy |\n| Collatz Conjecture | Steps to reach 1 | `zig run src/algorithm/math/collatz_conjecture.zig` | Medium |\n| Trailing Zeros in Factorial | Counts trailing zeros in n! | `zig run src/algorithm/math/factorial_trailing_zeroes.zig` | Medium |\n| Catalan Calculator | Calculates nth Catalan | `zig run src/algorithm/math/catalan.zig` | Hard |\n| **Advanced Mathematics** |\n| Binomial Coefficient | Pascal's triangle coefficients | `zig run src/algorithm/math/binomial_coefficient.zig` | Medium |\n| Matrix Multiplication | Performs matrix multiplication | `zig run src/algorithm/math/matrix_multiplication.zig` | Medium |\n| Monte Carlo Pi | Estimates π using Monte Carlo simulation | `zig run src/algorithm/math/monte_carlo_pi.zig` | Medium |\n| Quadratic Solver | Solves quadratic equations (ax² + bx + c = 0) | `zig run src/algorithm/math/quadratic_solver.zig` | Medium |\n| Cantor Set Generator | Generates Cantor set | `zig run src/algorithm/math/cantor_set.zig -- 0 1 3` | Hard |\n| Chinese Remainder | Solves linear congruences | `zig run src/algorithm/math/chinese_remainder.zig` | Hard |\n| Extended Euclidean | GCD and Bézout coefficients | `zig run src/algorithm/math/euclidean_algorithm_extended.zig` | Hard |\n| Linear Interpolation | Linear interpolation | `zig run src/algorithm/math/linear_interpolation.zig` | Hard |\n| Cartesian to Polar | Converts cartesian to polar coordinates | `zig run src/algorithm/math/cartesian_to_polar.zig` | Medium |\n| Fast Fibonacci | Optimized Fibonacci calculation | `zig run src/algorithm/math/fibonacci_fast.zig` | Medium |\n| Fibonacci Dynamic Programming | DP approach for Fibonacci | `zig run src/algorithm/math/fibonacci_dynamic_programming.zig` | Medium |\n| Fibonacci Binet Formula | Binet's formula for Fibonacci | `zig run src/algorithm/math/fibonacci_bnet_formula.zig` | Medium |\n| Fermat's Factorization | Integer factorization method | `zig run src/algorithm/math/fermats_factorization.zig` | Hard |\n| Fast Fourier Transform | FFT implementation | `zig run src/algorithm/math/fft.zig` | Hard |\n| Greatest Common Divisor | Alternative GCD implementation | `zig run src/algorithm/math/greatest_common_divisor.zig` | Medium |\n| Karatsuba Multiplication | Fast multiplication algorithm | `zig run src/algorithm/math/karatsuba.zig` | Hard |\n| Knapsack Problem | Dynamic programming solution | `zig run src/algorithm/math/knapsack.zig` | Hard |\n| Large Factorials | Big number factorial calculation | `zig run src/algorithm/math/large_factorials.zig` | Hard |\n| Modular Exponentiation | Fast modular exponentiation | `zig run src/algorithm/math/modular_exponentiation.zig` | Medium |\n| Newton-Raphson Method | Root-finding algorithm | `zig run src/algorithm/math/newton_raphson.zig` | Hard |\n| Pascal's Triangle | Generate Pascal's triangle | `zig run src/algorithm/math/pascals_triangle.zig` | Medium |\n| Polynomial Addition | Add two polynomials | `zig run src/algorithm/math/polynomial_add.zig` | Medium |\n| Series Sum | Calculate sum of series | `zig run src/algorithm/math/series_sum.zig` | Easy |\n| Sieve of Eratosthenes | Prime number generation | `zig run src/algorithm/math/sieve_of_eratosthenes.zig` | Medium |\n\n## 🚀 Prerequisites\n\n- **Zig Compiler**: \n  - Latest version recommended. Install via:\n\n    ```shell\n    sh -c \"$(curl -fsSL https://ziglang.org/download/index.json | jq -r '.master.url')\"\n    ```\n\n## 🔧 Running the Algorithms\n\nTo run any algorithm, use the Zig run command followed by the specific algorithm file path and any required arguments. For example:\n\n```shell\nzig run src/algorithm/math/prime_checker.zig\n# or\nzig test src/algorithm/math/prime_checker.zig\n```\n\nMore information is available in the respective file comment header.\n\n## 📚 Purpose\n\nThis repository provides a collection of mathematical algorithms implemented in Zig, showcasing the language's capabilities and performance. Each module is designed to be easily run and tested, making it a useful resource for learning and experimentation.\n\n## 🤝 Contributing\nContributions are welcome! Here's how to contribute:\n- Fork the repository\n- Create your feature branch (git checkout -b feature/AmazingFeature)\n- Commit your changes (git commit -m 'Add some AmazingFeature')\n- Push to the branch (git push origin feature/AmazingFeature)\n- Open a pull request\n\n## 📧 Contact\n\nRamsyana - ramsyana[at]mac[dot]com\n\nI'm a system engineering enthusiast. Feel free to fork, clone, open issues, or contribute to this project. Don’t hesitate to reach out with any questions, suggestions, or collaboration ideas!\n\n\n","funding_links":[],"categories":["Language Essentials"],"sub_categories":["Data Structure and Algorithm"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Framsyana%2FZig-Math-Algorithms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Framsyana%2FZig-Math-Algorithms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Framsyana%2FZig-Math-Algorithms/lists"}