# Pascalsches Dreieck



## the_undertaker (29. Mai 2007)

Ich hab mal mit nem eigenen C++-Programm diese Bilder hier erzeugt. Musste sie in zip-Ordner packen, weil sie ziemlich groß sind. Ich weiß zwar nicht, ob das hier ganz das richtige Forum ist, aber ich hab ja nicht fotografiert und 3D ist es auch nicht.

Edit: Ich habe die Zahlen im Pascalschen Dreieck durch verschiedene Zahlen geteilt (siehe Dateiname, bei pascal.bmp durch 2) und die Reste verschieden eingefärbt.
Für alle, die das Pascal'sche Dreieck nicht kennen: Am Rand stehen lauter Einser. Jede Zahl ist die Summe der beiden Zahlen über ihr:

```
1       
      1 1      
     1 2 1
    1 3 3 1
   1 4 6 4 1
     usw.
```


----------



## the_undertaker (29. Mai 2007)

Mir ging es eigentlich mehr um die Bilder als um das Programm... (Deswegen habe ich es nicht ins C++-Forum getan)


----------



## the_undertaker (30. Mai 2007)

Ich hatte es ja eigentlich in den Showroom getan, um ein bisschen Kritik zu hören, aber ihr könnt mir ja auch hier antworten, oder? (12x aufgerufen, aber keiner sagt seine Meinung dazu, das finde ich eigentlich ein bisschen wenig)


----------



## Crazy_down (30. Mai 2007)

Dann mache ich mal den Anfang.
Das Pascal'sche Dreieck war mir Unbekannt, umso schöner finde ich es =)
Als Interessent am Apfelmännchen etc. finde ich es wirklich gut.

Die Umsetzung mit den Dreiecken ist gut gelungen. Mich würde eine Zoom funktion Interessieren so wie beim Apfelmännchen ^^ 

Aber auf jeden Fall eine sehr gute Idee.


----------



## the_undertaker (30. Mai 2007)

Erstmal vielen Dank für das Lob.

Was meinst du denn für eine Zoom-Funktion? Das sind halt nur einfache Bitmaps. (Mit Paint kannst du bis auf das 8-fache vergrößern, falls du das meinst)


----------



## the_undertaker (30. Mai 2007)

Ich finde ja am interessantesten das "Pascalsche Dreieck modulo 6". Da "überlagern" sich Muster vom pascal2 und pascal3.


----------



## Crazy_down (30. Mai 2007)

Ja aber da du es  Programmierst hast koenntest du eine Zoom funktion machen. Entweder eine andere ausgabe oder das Speichern in der Bitmap mit nem Zähler hinten dran.
Also Bild1,Bild2,Bild3 jeweils um einen bestimmten wert reingezoomt.

Hier einige Varianten als Applet.
http://www.jjam.de/Java/Applets/Fraktale/Apfelmaennchen_Zoom.html


----------



## the_undertaker (30. Mai 2007)

Wenn ich reinzoome, dann kommt ja immer das gleiche raus, wozu brauche ich dann ne Zoomfunktion?


----------



## Crazy_down (30. Mai 2007)

Dann habe ich es falsch Verstanden. Wenn jede Zahl die Summe der beiden Zahlen über ihr ist, sollten sich doch die Dreiecke Vervielfachen oder nicht ?


----------



## the_undertaker (30. Mai 2007)

Man bräuchte eher eine Rauszoomfunktion, dann würde das Bild immer detailreicher, aber dafür werden die Bitmaps um den Faktor, durch den geteilt wird, hoch 2 größer (weils ja ne Fläche ist) Wenn wir also mal pascal5 nehmen und wollen die nächsthöhere Stufe erreichen, wird die Bitmap 5*5=25-Mal so groß, bei 2 Stufen sind das dann schon 625-Mal.

Edit: Das gilt übrigens nicht bei pascal6, weil da pascal2 und pascal3 "überlagert" sind. Weil 2^x immer gerade und 3^x immer ungerade ist, treffen sich die beiden Muster nie, also kann man hier nicht wirklich von einem Fraktal reden, was die anderen ja sind.
pascal7 habe ich übrigens nur nicht hochgeladen, weil es entweder zu groß ist, auch im anderen Dateiformat oder im zip-Ordner, oder nur 49 mal 98 Pixel groß ist. Wenns dich interessiert, kann ich ja das kleine Bild hochladen.


----------



## Crazy_down (30. Mai 2007)

Achsoo rum ^^ alles klar.
Mhh Danke auf jeden fall für die Erklärung.
Gibts denn eine andere Möglichkeit aus Bitmaps ? 
Wo man das evtl. Realisieren könnte ?


----------



## the_undertaker (30. Mai 2007)

Ich kenn nur den Aufbau des Bitmap-Formats, und das ist auch das einzig vernünftige, weil das halt eine Pixel-, keine Vektorgrafik ist (Ich nehme ja für jede Zahl im Dreieck 2 Pixel)
Ich kann also schreiben:
	
	
	



```
if(pixel-soll-orange-gefärbt-werden)
{
     outfile.put(0); //Blau-Wert 0
     outfile.put(127); //Grün-Wert 127
     outfile.put(255); //Rot-Wert 255
}
```
Das mit Vektorgrafiken zu realisieren, ist glaube ich nicht so einfach, weil ja erstmal trotzdem die Pixel berechnet werden müssen und dann die Grafik umgewandelt werden müsste(kA, wie das geht)

Edit:http://de.wikipedia.org/wiki/Windows_Bitmap


----------

