Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/arya2004/turing-machine-calculator-simulator
Simulation of Basic Calculator through the Turing Machine
https://github.com/arya2004/turing-machine-calculator-simulator
c hacktober hacktoberfest hacktoberfest-accepted hacktoberfest-starter hacktoberfest2024 turing-machine turing-machine-simulator
Last synced: 5 days ago
JSON representation
Simulation of Basic Calculator through the Turing Machine
- Host: GitHub
- URL: https://github.com/arya2004/turing-machine-calculator-simulator
- Owner: arya2004
- License: mit
- Created: 2023-05-27T18:23:56.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-10-27T16:17:29.000Z (22 days ago)
- Last Synced: 2024-10-27T19:16:28.677Z (22 days ago)
- Topics: c, hacktober, hacktoberfest, hacktoberfest-accepted, hacktoberfest-starter, hacktoberfest2024, turing-machine, turing-machine-simulator
- Language: C
- Homepage:
- Size: 367 KB
- Stars: 2
- Watchers: 1
- Forks: 3
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# Turing Machine Calculator Simulation
This repository contains a collection of header files for simulating a basic calculator using a Turing machine. The calculator supports addition, subtraction, multiplication, division, and factorial operations. The simulation is based on the principles and theory described in the paper [Construction of Basic Calculator through Turing Machine](https://www.ijetajournal.org/volume-2/issue-6/IJETA-V2I6P1.pdf).
## Table of Contents
- [Introduction](#introduction)
- [Usage](#usage)
- [Getting Started](#getting-started)
- [Supported Operations](#supported-operations)
- [Contributing](#contributing)
- [License](#license)
- [Acknowledgements](#acknowledgements)## Introduction
The Turing machine is a theoretical computing device that manipulates symbols on an infinite tape based on a set of rules. This repository implements a Turing machine simulation of a basic calculator capable of performing addition, subtraction, multiplication, division, and factorial calculations.
The simulation aims to provide an understanding of how a Turing machine can be designed and programmed to perform arithmetic operations. It follows the principles outlined in the referenced paper, allowing developers to explore and experiment with the underlying concepts.
## Usage
To use the Turing machine calculator simulation, follow these steps:
1. Clone the repository to your local machine.
```shell
git clone https://github.com/arya2004/turing-machine-calculator-simulator.git
```
2. Copy the required header files from the repository to your project directory.
3. Include the desired header file(s) in your C program.
4. Follow the instructions provided in the referenced paper to implement and execute the desired arithmetic operation.## Getting Started
To understand the concepts and theory behind the Turing machine calculator simulation, it is recommended to read the paper [Simulation of Basic Calculator through Turing Machine](https://www.ijetajournal.org/volume-2/issue-6/IJETA-V2I6P1.pdf). The paper provides detailed information on the design and implementation of the Turing machine, as well as the rules and configurations required for each supported operation.
## Supported Operations
The Turing machine calculator simulation supports the following arithmetic operations:
- Addition (+)
- Subtraction (-)
- Multiplication (*)
- Division (/)
- Factorial (!)Each operation has its own header file, which contains the necessary definitions, rules, and configurations for simulating the operation using a Turing machine.
## Contributing
Contributions to this repository are welcome. If you have any improvements or additional operations to contribute, please follow these steps:
1. Fork the repository.
2. Create a new branch for your feature or improvement.
3. Implement your changes and test them thoroughly.
4. Commit and push your changes to your forked repository.
5. Submit a pull request detailing your changes and their benefits.## License
This repository is licensed under the [MIT License](LICENSE). Feel free to use the code provided here in your own projects.
## Acknowledgements
We would like to acknowledge the authors of the referenced paper, [Construction of Basic Calculator through Turing Machine: A Review](https://www.ijetajournal.org/volume-2/issue-6/IJETA-V2I6P1.pdf), and the Youtube video [Factorial Turing machine: Computing 4!](https://www.youtube.com/watch?v=j7cCKXe1NcY), for their valuable research and insights into implementing a calculator using a Turing machine.
If you have any questions or suggestions for improvement, please don't hesitate to open an issue or reach out to the project maintainers.
Happy calculating!