Mandelbrot und Apfelmännchen in C++

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Mandelbrot und Apfelmännchen in C++

Beitrag von DEBIANUNDANDREAS » 16.11.2013 11:16:05

Sehr geehrte Damen und Herren.
Ich suche ein Quelltext in C++ unter Linux also Debian, eventuell Derivate für Mandelbrot und Apfelmännchen.
Ich bin Anfänger in Sachen Programmierung in C++.
Wer könnte mir hier oder per Link ein/mehrere C++ Listing die Freeware sind, zur Verfügung stellen?

1.Mein Ziel: Ich will es mir ergötzen, also zum Glotzen.
2. Ich will den C++Quelltext, wenn existent, compilieren.

Benutzeravatar
Natureshadow
Beiträge: 2157
Registriert: 11.08.2007 22:45:28
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Radevormwald
Kontaktdaten:

Re: Mandelbrot und Apfelmännchen in C++

Beitrag von Natureshadow » 16.11.2013 13:44:54

:google:

Benutzeravatar
DEBIANUNDANDREAS
Beiträge: 1304
Registriert: 01.06.2013 10:37:46

Re: Mandelbrot und Apfelmännchen in C++

Beitrag von DEBIANUNDANDREAS » 16.11.2013 14:18:03

Das ist nicht viel >>>

Code: Alles auswählen

"zn+1 := zn² + c"

Benutzeravatar
habakug
Moderator
Beiträge: 4314
Registriert: 23.10.2004 13:08:41
Lizenz eigener Beiträge: MIT Lizenz

Re: Mandelbrot und Apfelmännchen in C++

Beitrag von habakug » 16.11.2013 16:38:13

Hallo!

Hier [1] hat jemand seinen Code veröffentlicht. Ich finde, das ist ein guter Anfang, sich das mal anzuschauen. Allerdings ist etwas Vorbereitung erforderlich.

Code: Alles auswählen

# apt-get install freeglut3-dev
Denn man will es ja auch bunt haben. Zweitens muß der Code noch etwas angepasst werden, damit es auch erfolgreich kompiliert:

Code: Alles auswählen

$ diff mandelbrot.cpp mandelbrot.cpp_orig 
2c2
< #include <GL/glut.h> // include GLUT library header
---
> #include <gl/glut.h> // include GLUT library header
12c12
< GLfloat black[] = {0.0f, 0.0f, 0.0f}; // black color
---
> GLfloat[] black = {0.0f, 0.0f, 0.0f}; // black color
134d133
< 
Man ändert also "gl/glut.h" in "GL/glut.h" und setzt die eckigen Klammern für das Array an die richtige Stelle, also "GLfloat[] black" wird zu "GLfloat black[]".
Jetzt kann man auch schon bauen mit

Code: Alles auswählen

$ g++ -o mandelbrot mandelbrot.cpp -lGL -lglut
$ ./mandelbrot
Der Code, der als "mandelbrot.cpp" vorliegt, wird hier kompiliert und als Programm "mandelbrot" gespeichert. Mit "f" geht es in den Vollbildmodus, mit "Esc" ist man wieder draussen.
Ein Tip: Man sollte, wenn man Code von irgendwo kopiert, einen Editor mit Syntax-Highlighting verwenden. Dann kann man schnell sehen, wenn irgendwo etwas nicht stimmt. Besonders Zeilenumbrüche machen ja immer wieder Probleme.


Gruss, habakug

[1] http://wojanton.ovh.org/ang/fractals/mandelbrotCpp.php
( # = root | $ = user | !! = mod ) (Vor der PN) (Debianforum-Wiki) (NoPaste)

Antworten