{"id":48147681,"url":"https://github.com/bezlant/s21_math_solver","last_synced_at":"2026-04-04T17:01:52.474Z","repository":{"id":41273476,"uuid":"497006198","full_name":"bezlant/s21_math_solver","owner":"bezlant","description":"🧮 A simple math expression evaluator built wtih Imgui. (School 42)","archived":false,"fork":false,"pushed_at":"2022-12-22T11:42:38.000Z","size":12606,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"develop","last_synced_at":"2023-03-04T00:43:21.578Z","etag":null,"topics":["c","calculator","check","djikstra-algorithm","graph-visualization","imgui-glfw","math-solver","parser","rpn-calculator","test-coverage"],"latest_commit_sha":null,"homepage":"","language":"C","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/bezlant.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}},"created_at":"2022-05-27T13:24:52.000Z","updated_at":"2023-02-17T06:02:52.000Z","dependencies_parsed_at":"2023-01-30T07:55:11.920Z","dependency_job_id":null,"html_url":"https://github.com/bezlant/s21_math_solver","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"purl":"pkg:github/bezlant/s21_math_solver","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bezlant%2Fs21_math_solver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bezlant%2Fs21_math_solver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bezlant%2Fs21_math_solver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bezlant%2Fs21_math_solver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bezlant","download_url":"https://codeload.github.com/bezlant/s21_math_solver/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bezlant%2Fs21_math_solver/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31407391,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["c","calculator","check","djikstra-algorithm","graph-visualization","imgui-glfw","math-solver","parser","rpn-calculator","test-coverage"],"created_at":"2026-04-04T17:01:52.222Z","updated_at":"2026-04-04T17:01:52.439Z","avatar_url":"https://github.com/bezlant.png","language":"C","readme":"# Math Solver\n\nhttps://user-images.githubusercontent.com/89563512/185045399-0f98ad54-0580-4e1c-8b0b-f7a8d163ee23.mov\n\n### Table of Contents\n* [Introduction](#introduction)\n* [Features](#features)\n* [Goals](#goals)\n* [Build \u0026 Dependencies](#build-and-dependencies)\n* [Tests](#tests)\n\n### Introduction\n\nImplementation of the **math solver** in C following the principles of structured programming. In addition to basic arithmetic operations, the calculator features the *mathematical functions*, *x variable* and *graphing*.\n\n### Features\n\u003ctable\u003e\n\u003ctr\u003e\u003cth\u003eFunctions\u003c/th\u003e\u003cth\u003eArithmetic Operators\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\u003ctd\u003e\n\n| Function description | Function |\n| ------ | ------ |\n| Cosine | cos(x) |\n| Sine | sin(x) |\n| Tangent | tan(x) |\n| Arc cosine | acos(x) |\n| Arc sine | asin(x) |\n| Arc tangent | atan(x) |\n| Square root | sqrt(x) |\n| Natural logarithm | ln(x) |\n| Common logarithm | log(x) |\n\n\u003c/td\u003e\u003ctd\u003e\n\n| Operator | Example |\n| --------- | ------ |\n| Brackets | (a + b) |\n| Addition | a + b |\n| Subtraction | a - b |\n| Multiplication | a * b |\n| Division | a / b |\n| Power | a ^ b |\n| Modulus | a mod b |\n| Unary plus | +a |\n| Unary minus | -a |\n\n\u003c/td\u003e\u003c/tr\u003e \u003c/table\u003e\n\n**BONUS**: You can find Credit \u0026 Debit calculators as well ;)\n\n### Goals\n\n- [x] Make \u0026 Imgui integration\n- [x] GUI based on Dear ImGui\n- [x] Integrate ImPlot\n- [x] Shunting-Yard algorithm.\n- [x] String validation algorithm.\n- [x] Credit calculator\n- [x] Debit calculator\n- [x] Unit Tests \n- [x] Add previews \u0026 tests to README\n\n### Build and Dependencies\n\n\u003cu\u003eYou'll need to install g++, pcre, make, pkg-config, glfw and doxygen(if you need the documentation).\u003c/u\u003e\u003cbr\u003e\n\n```\n$ git clone https://github.com/bezlant/s21_math_solver --recursive\n$ cd s21_math_solver/src/\n$ make \n$ make -f test.mk (for tests)\n```\n\n### Tests\n* Unit tests are implemented using [Check](https://libcheck.github.io/check/) \u0026 coverage report with [LCOV](https://github.com/linux-test-project/lcov)\n\nhttps://user-images.githubusercontent.com/89563512/185045620-0e82268f-fa63-47df-99cc-abe3894ffb69.mov\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbezlant%2Fs21_math_solver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbezlant%2Fs21_math_solver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbezlant%2Fs21_math_solver/lists"}