Sto leggendo il libro Fractals for the classroom - Introduction to fractals and chaos.

Ho trovato questo semplicissimo programma in BASIC che disegna il triangolo di Sierpinsky, utilizzando un sistema di coordinate binarie per colorare - le pari di un colore, le dispari di un altro - le celle del triangolo di Pascal.
codice:
DEFINT x, y
FOR x = 0 TO 255
    FOR x = 0 TO y
        IF (x AND (y-x)) = 0 THEN PSET (x + 158 - .5 * y, y + 30)
    NEXT x
NEXT y
L'immagine generata è larga 256 pixels. 158 è la metà della larghezza + 30 (il perché non l'ho capito...!).

Ma comunque. Come potrei trasformare questo programma in C++ (i pixel li tratto come punti: li salvo in un file che poi passo a gnuplot).

Ho pensato a un codice tipo questo:
codice:
#include <iostream>
using std::cout;
using std::endl;
using std::ios;

#include <fstream>
using std::ofstream;

int main()
{
	ofstream oFile("sierpinsky.txt", ios::out);
	
	for (int x = 0, x < 256, x++)
	{
        // Non capisco come tradurre il ciclo dal BASIC
        {
            if (x == 0 and (x - y) == 0)
            {
                oFile << x + 158 - 0.5 * y << ' ' << y + 30 << endl;
            }
        }
	}
	
	return 0;
}
Ma visto che la y nel programma in BASIC non viene inizializzata come faccio a utilizzarla per un ciclo for in C++? Inoltre dovrei utilizzare le coordinate scritte in modo binario, ma non vedo dove questo avviene nel programma in BASIC...!

Idea di come fare?!