Name | CPPinator JSON |
Version |
1.0.5
JSON |
| download |
home_page | https://github.com/Hardvan/CPPinator |
Summary | CPPinator is a Python automation script designed for compiling and running multiple C++ files in a specified directory. It simplifies the process of handling multiple C++ programs and provides a clear and organized output for each program's execution along with the execution time for each program. |
upload_time | 2024-09-09 11:58:08 |
maintainer | None |
docs_url | None |
author | Hardik Pawar |
requires_python | >=3.6 |
license | None |
keywords |
c++
automation
script
compile
run
multiple
programs
cppinator
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# CPPinator
CPPinator is a Python automation script designed for compiling and running multiple C++ files in a specified directory. It simplifies the process of handling multiple C++ programs and provides a clear and organized output for each program's execution along with the execution time for each program.
## How it works
1. The script allows you to specify a directory path where your C++ source code files are located.
2. It changes the current working directory to the specified path.
3. CPPinator lists all the C++ source code files with the `.cpp` extension in the directory.
4. For each `.cpp` file found, it compiles the code using `g++` and runs the resulting executable.
5. The script captures and displays the output and any errors produced by each program.
6. Upon successful execution of all C++ files, it provides a summary message.
7. Finally, the compiled executable file (`a.exe`) is deleted to keep your directory clean.
## Usage
1. Ensure you have Python and a C++ compiler (e.g., g++) installed on your system.
2. Install the `CPPinator` package from PyPI using pip:
```bash
pip install CPPinator
```
OR
Clone or download the `CPPinator.py` script to your local machine.
```bash
git clone https://github.com/Hardvan/CPPinator
cd CPPinator
pip install .
```
3. Call the `compile_and_run_cpp_files` function from the `CPPinator` package with the directory path as an argument.
```python
from CPPinator import compile_and_run_cpp_files
compile_and_run_cpp_files("path/to/your/directory")
```
View the `run.py` file for an example of how to use the `CPPinator` package.
## Example Output
Here's an example of the script's output when run with a list of C++ files in the `Basic Problems` directory.
Changing working directory...
Current working directory: F:\CPPinator\Basic Problems
List of .cpp files:
1. `count_digits.cpp`
2. `divisors.cpp`
3. `gcd.cpp`
4. `palindrome_number.cpp`
5. `prime.cpp`
6. `reverse_array.cpp`
7. `reverse_number.cpp`
Running .cpp files:
1. `count_digits.cpp` (1.07s)
No. of digits in 123456789 is:
9
9
9
Expected: 9
2. `divisors.cpp` (1.14s)
Divisors of 100 are:
1 100 2 50 4 25 5 20 10
Divisors of 100 are:
1 2 4 5 10 20 25 50 100
Expected: 1 2 4 5 10 20 25 50 100
3. `gcd.cpp` (1.16s)
GCD of 12 and 15 is:
3
3
Expected: 3
4. `palindrome_number.cpp` (1.07s)
12321 is palindrome: true
Expected: true
5. `prime.cpp` (1.11s)
100 is not prime
100 is not prime
Expected: not prime
6. `reverse_array.cpp` (1.05s)
Original array:
1 2 3 4 5
Reversed array using two pointers:
5 4 3 2 1
Reversed array using recursion:
5 4 3 2 1
Reversed array using temporary array:
5 4 3 2 1
Expected: 5 4 3 2 1
7. `reverse_number.cpp` (1.24s)
Reverse of 123456789 is: 987654321
Expected: 987654321
✅ Ran all C++ files successfully. (7.84s)
Raw data
{
"_id": null,
"home_page": "https://github.com/Hardvan/CPPinator",
"name": "CPPinator",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "C++, automation, script, compile, run, multiple, programs, CPPinator",
"author": "Hardik Pawar",
"author_email": "hardikpawarh@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/64/f3/45118629deae461d88649cad258582e15e16281ea15c221d5a344f3d37ad/CPPinator-1.0.5.tar.gz",
"platform": null,
"description": "# CPPinator\r\n\r\nCPPinator is a Python automation script designed for compiling and running multiple C++ files in a specified directory. It simplifies the process of handling multiple C++ programs and provides a clear and organized output for each program's execution along with the execution time for each program.\r\n\r\n## How it works\r\n\r\n1. The script allows you to specify a directory path where your C++ source code files are located.\r\n\r\n2. It changes the current working directory to the specified path.\r\n\r\n3. CPPinator lists all the C++ source code files with the `.cpp` extension in the directory.\r\n\r\n4. For each `.cpp` file found, it compiles the code using `g++` and runs the resulting executable.\r\n\r\n5. The script captures and displays the output and any errors produced by each program.\r\n\r\n6. Upon successful execution of all C++ files, it provides a summary message.\r\n\r\n7. Finally, the compiled executable file (`a.exe`) is deleted to keep your directory clean.\r\n\r\n## Usage\r\n\r\n1. Ensure you have Python and a C++ compiler (e.g., g++) installed on your system.\r\n\r\n2. Install the `CPPinator` package from PyPI using pip:\r\n\r\n ```bash\r\n pip install CPPinator\r\n ```\r\n\r\n OR\r\n\r\n Clone or download the `CPPinator.py` script to your local machine.\r\n\r\n ```bash\r\n git clone https://github.com/Hardvan/CPPinator\r\n cd CPPinator\r\n pip install .\r\n ```\r\n\r\n3. Call the `compile_and_run_cpp_files` function from the `CPPinator` package with the directory path as an argument.\r\n\r\n ```python\r\n from CPPinator import compile_and_run_cpp_files\r\n\r\n compile_and_run_cpp_files(\"path/to/your/directory\")\r\n ```\r\n\r\n View the `run.py` file for an example of how to use the `CPPinator` package.\r\n\r\n## Example Output\r\n\r\nHere's an example of the script's output when run with a list of C++ files in the `Basic Problems` directory.\r\n\r\nChanging working directory...\r\nCurrent working directory: F:\\CPPinator\\Basic Problems\r\n\r\nList of .cpp files:\r\n\r\n1. `count_digits.cpp`\r\n2. `divisors.cpp`\r\n3. `gcd.cpp`\r\n4. `palindrome_number.cpp`\r\n5. `prime.cpp`\r\n6. `reverse_array.cpp`\r\n7. `reverse_number.cpp`\r\n\r\nRunning .cpp files:\r\n\r\n1. `count_digits.cpp` (1.07s)\r\n\r\n No. of digits in 123456789 is: \r\n 9 \r\n 9 \r\n 9 \r\n Expected: 9\r\n\r\n2. `divisors.cpp` (1.14s)\r\n\r\n Divisors of 100 are: \r\n 1 100 2 50 4 25 5 20 10 \r\n Divisors of 100 are: \r\n 1 2 4 5 10 20 25 50 100 \r\n Expected: 1 2 4 5 10 20 25 50 100\r\n\r\n3. `gcd.cpp` (1.16s)\r\n\r\n GCD of 12 and 15 is: \r\n 3 \r\n 3 \r\n Expected: 3\r\n\r\n4. `palindrome_number.cpp` (1.07s)\r\n\r\n 12321 is palindrome: true \r\n Expected: true\r\n\r\n5. `prime.cpp` (1.11s)\r\n\r\n 100 is not prime \r\n 100 is not prime \r\n Expected: not prime\r\n\r\n6. `reverse_array.cpp` (1.05s)\r\n\r\n Original array: \r\n 1 2 3 4 5 \r\n Reversed array using two pointers: \r\n 5 4 3 2 1 \r\n Reversed array using recursion: \r\n 5 4 3 2 1 \r\n Reversed array using temporary array: \r\n 5 4 3 2 1 \r\n Expected: 5 4 3 2 1\r\n\r\n7. `reverse_number.cpp` (1.24s)\r\n\r\n Reverse of 123456789 is: 987654321 \r\n Expected: 987654321\r\n\r\n\u00e2\u0153\u2026 Ran all C++ files successfully. (7.84s)\r\n\r\n\r\n",
"bugtrack_url": null,
"license": null,
"summary": "CPPinator is a Python automation script designed for compiling and running multiple C++ files in a specified directory. It simplifies the process of handling multiple C++ programs and provides a clear and organized output for each program's execution along with the execution time for each program.",
"version": "1.0.5",
"project_urls": {
"Homepage": "https://github.com/Hardvan/CPPinator"
},
"split_keywords": [
"c++",
" automation",
" script",
" compile",
" run",
" multiple",
" programs",
" cppinator"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3611be4e76cb7b7fae1383c67738e0f4b60f45c5c515760140a2c0aed67477cd",
"md5": "d595c1ea6e50b72634917ab298ded559",
"sha256": "01fcc599af3b12dfe4cdaaf9122919e1f20f86699fb328292df1b8ebdda4787b"
},
"downloads": -1,
"filename": "CPPinator-1.0.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d595c1ea6e50b72634917ab298ded559",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 5799,
"upload_time": "2024-09-09T11:58:04",
"upload_time_iso_8601": "2024-09-09T11:58:04.857805Z",
"url": "https://files.pythonhosted.org/packages/36/11/be4e76cb7b7fae1383c67738e0f4b60f45c5c515760140a2c0aed67477cd/CPPinator-1.0.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "64f345118629deae461d88649cad258582e15e16281ea15c221d5a344f3d37ad",
"md5": "b049207e7dffeb2851e907fc8511e6d0",
"sha256": "6de908c83672d96163aa4a495714668b3e2df46382ea85815cf9d42f3ff18c7f"
},
"downloads": -1,
"filename": "CPPinator-1.0.5.tar.gz",
"has_sig": false,
"md5_digest": "b049207e7dffeb2851e907fc8511e6d0",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 5282,
"upload_time": "2024-09-09T11:58:08",
"upload_time_iso_8601": "2024-09-09T11:58:08.155783Z",
"url": "https://files.pythonhosted.org/packages/64/f3/45118629deae461d88649cad258582e15e16281ea15c221d5a344f3d37ad/CPPinator-1.0.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-09 11:58:08",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Hardvan",
"github_project": "CPPinator",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [],
"lcname": "cppinator"
}