1
0
Fork
You've already forked collatz
0
Collatz conjecture calculator and visualizer
C 93.8%
C++ 5.9%
Makefile 0.3%
2024年08月08日 11:32:04 +00:00
img updated readme 2024年06月24日 11:44:37 +02:00
layouts feat: added settings components that don't quite work yet 2024年08月06日 16:09:36 +02:00
src fix: made font larger 2024年08月08日 13:31:02 +02:00
.gitignore first commit 2024年06月22日 16:59:19 +02:00
LICENSE first commit 2024年06月22日 16:59:19 +02:00
makefile fix: makefile run target now depends on release target 2024年07月24日 00:31:33 +02:00
README.md fix: update readme 2024年07月24日 00:46:33 +02:00

Collatz Visualizer

A visualizer for the Collatz Conjecture made in C++ with raylib.

collatz-demo

This is just a visualizer and calculator and not a proof engine.

It's also something I made just for fun and it really isn't optimized but that also wasn't my goal. It shouldn't have huge CPU usage though.

There are some features that would be nice to have but for now I'm quite happy with it. If i get around to it I will implement these (in no particular order):

  • zooming
  • better rendering (so that the text is actually readable even when there are a lot of dots)
  • scrolling
  • good command line parsing

About

The program first creates a map and from there builds an N-ary tree. For drawing it relies on said tree and traverses it from 1 to the end.

There is also a (simple) check for the case that numbers don't converge to 1 should that ever be the case.

Have fun reading the code or using the program!

Usage

In order to compile this project you need raylib and the clang compiler. There is a makefile for building so if you have raylib and clang you can just run make and it should work:

make

You can start a demo with:

make run

License

See the license file.

Warranty

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.