Kamil Ondrousek
/
Game_Of_Life
Diff: main.cpp
- Revision:
- 0:65c1f3d24194
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Sun Dec 26 18:48:20 2010 +0000 @@ -0,0 +1,80 @@ +#include "mbed.h" +#include "TFT_4DGL.h" + +unsigned short int displayold[40][53]; +unsigned short int displaynew[40][53]; + +int sx,sy,clst,x,y,test,loops; + +TFT_4DGL ecran(p9,p10,p11); + +int main() { + + srand(1); + + while(1) + { + + for (sy = 1; sy <= 52; sy++) + { + for (sx = 1; sx <= 39; sx++) + { + + if (rand()%10 == 4) + { + displayold[sx][sy] = 1; + } + } + } + + for (loops = 0;loops <= 500; loops++) + { + for (sy = 1; sy <= 52; sy++) + { + for (sx = 1; sx <= 39; sx++) + { + + if (displayold[sx][sy] == 1) + { + test = displayold[sx-1][sy-1] + displayold[sx][sy-1] + displayold[sx+1][sy-1] + displayold[sx-1][sy] + displayold[sx+1][sy] + displayold[sx-1][sy+1] + displayold[sx][sy+1] + displayold[sx+1][sy+1]; + if (test == 2 || test == 3) + { + displaynew[sx][sy] = 1; + } + else displaynew[sx][sy] = 0; + } + else + { + test = displayold[sx-1][sy-1] + displayold[sx][sy-1] + displayold[sx+1][sy-1] + displayold[sx-1][sy] + displayold[sx+1][sy] + displayold[sx-1][sy+1] + displayold[sx][sy+1] + displayold[sx+1][sy+1]; + if (test == 3) + { + displaynew[sx][sy] = 1; + } + + } + + } + } + + + for (sy = 1; sy <= 52; sy++) + { + for (sx = 1; sx <= 39; sx++) + { + if (displaynew[sx][sy] != displayold[sx][sy]) + { + displayold[sx][sy] = displaynew[sx][sy]; + if (displaynew[sx][sy] == 1) ecran.circle(6*sx,6*sy,2,rand()); + else ecran.circle(6*sx,6*sy,2,BLACK); + + } + + + } + } + + + } + + } +}