PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Iterativ alle Möglichen belegungen bestimmen



milchmann
16-01-2007, 18:08
Ich möchte folgendes Programmieren:

Es existiert ein Brett mit n*n Feldern (2d-Array). Das Array wird mit null initialisiert. Jedes Feld kann nun 2 Farben annehmen: rot (1) und blau (2). Ich möchte nun abwechselnd die Lichter einschalten bis alle möglichen Lichterkombinationen durchprobiert sind.

Wenn ich nur eine Zeile hätte könnte ich ja quasi "binär" zählen und komme somit auf alle Möglichen Belgeungen, aber jetzt gibt es ja noch zusätzlich Spalten.

Wie stelle ich das möglichst iterativ an?

Nach jeder Änderung wird eine Funktion aufgerufen, die nach bestimmten Mustern sucht die möglicherweise entstanden sind und das dann ausgibt.

Vielen Dank!

mehlvogel
16-01-2007, 18:13
Wenn du in Zeile k bist stellst du in Zeile k eine Zahl in binär da und zählst die Zeile k+1 (wenn k < n) binär durch. Danach erhöhst du die dargestellte Zahl in Zeile k um eins und fängst von vorne an.

anda_skoa
16-01-2007, 19:28
Oder du interpretierst das Feld als ein eindimensionales (aber n*n langes) Array und zählst das normal binär durch.

Ciao,
_