All pastes #2051345 Raw Edit

Miscellany

public cpp v1 · immutable
#2051345 ·published 2011-04-27 22:03 UTC
rendered paste body
void RunKernelCPU(int N){	for(int i = 0; i < N; i++) {		for (int x = 0; x < NX; x++) {			for (int y = 0; y < NY; y++) {				switch (ELETTER[x][y])				{				case ELEM_FU:					if (ELETKOR[x][y] > MH_FU) {						ELETTER[x][y] = ELEM_SEMMI;					} else {						ELETKOR[x][y]++;						if (SZAPOR[x][y] > SZ_FU) {							if (ELETTER[x-1][y] == ELEM_SEMMI) ELETTER[x-1][y] = ELEM_FU;							else if (ELETTER[x][y-1] == ELEM_SEMMI) ELETTER[x][y-1] = ELEM_FU;							else if (ELETTER[x+1][y] == ELEM_SEMMI) ELETTER[x+1][y] = ELEM_FU;							else if (ELETTER[x][y+1] == ELEM_SEMMI) ELETTER[x][y+1] = ELEM_FU;							SZAPOR[x][y] = 0;						} else {							SZAPOR[x][y]++;						}					}					break;				case ELEM_KECSKE:					if (ELETKOR[x][y] > MH_KECSKE || EHSEG[x][y] > EH_KECSKE) {						ELETTER[x][y] = ELEM_SEMMI;					} else {						ELETKOR[x][y]++;						if (SZAPOR[x][y] > SZ_KECSKE) {							if (ELETTER[x-1][y] == ELEM_SEMMI) ELETTER[x-1][y] = ELEM_KECSKE;							else if (ELETTER[x][y-1] == ELEM_SEMMI) ELETTER[x][y-1] = ELEM_KECSKE;							else if (ELETTER[x+1][y] == ELEM_SEMMI) ELETTER[x+1][y] = ELEM_KECSKE;							else if (ELETTER[x][y+1] == ELEM_SEMMI) ELETTER[x][y+1] = ELEM_KECSKE;							SZAPOR[x][y] = 0;						} else {							SZAPOR[x][y]++;							if (EHSEG[x][y] > ESZ_KECSKE) {								if (ELETTER[x-1][y] == ELEM_FU) {									ELETTER[x][y] = ELEM_SEMMI;									ELETTER[x-1][y] = ELEM_KECSKE;									EHSEG[x-1][y] = 0;									SZAPOR[x-1][y] = SZAPOR[x][y];									ELETKOR[x-1][y] = ELETKOR[x][y];								} else {									if (ELETTER[x][y-1] == ELEM_FU) {										ELETTER[x][y] = ELEM_SEMMI;										ELETTER[x][y-1] = ELEM_KECSKE;										EHSEG[x][y-1] = 0;										SZAPOR[x][y-1] = SZAPOR[x][y];										ELETKOR[x1][y-1] = ELETKOR[x][y];									} else { 										if (ELETTER[x+1][y] == ELEM_FU) {											ELETTER[x][y] = ELEM_SEMMI;											ELETTER[x+1][y] = ELEM_KECSKE;											EHSEG[x+1][y] = 0;											SZAPOR[x+1][y] = SZAPOR[x][y];											ELETKOR[x+1][y] = ELETKOR[x][y];										} else { 											if (ELETTER[x][y+1] == ELEM_FU) {												ELETTER[x][y] = ELEM_SEMMI;												ELETTER[x][y+1] = ELEM_KECSKE;												EHSEG[x][y+1] = 0;												SZAPOR[x][y+1] = SZAPOR[x][y];												ELETKOR[x][y+1] = ELETKOR[x][y];											} else {												// mozog												if (ELETTER[x-1][y] == ELEM_SEMMI) {													ELETTER[x][y] = ELEM_SEMMI;													ELETTER[x-1][y] = ELEM_KECSKE;													EHSEG[x-1][y] = EHSEG[x][y];													SZAPOR[x-1][y] = SZAPOR[x][y];													ELETKOR[x-1][y] = ELETKOR[x][y];												} else {													if (ELETTER[x][y-1] == ELEM_SEMMI) {														ELETTER[x][y] = ELEM_SEMMI;														ELETTER[x][y-1] = ELEM_KECSKE;														EHSEG[x][y-1] = EHSEG[x][y];														SZAPOR[x][y-1] = SZAPOR[x][y];														ELETKOR[x][y-1] = ELETKOR[x][y];													} else {														if (ELETTER[x+1][y] == ELEM_SEMMI) {															ELETTER[x][y] = ELEM_SEMMI;															ELETTER[x+1][y] = ELEM_KECSKE;															EHSEG[x+1][y] = EHSEG[x][y];															SZAPOR[x+1][y] = SZAPOR[x][y];															ELETKOR[x+1][y] = ELETKOR[x][y];														} else {															if (ELETTER[x][y+1] == ELEM_SEMMI) {																ELETTER[x][y] = ELEM_SEMMI;																ELETTER[x][y+1] = ELEM_KECSKE;																EHSEG[x][y+1] = EHSEG[x][y];																SZAPOR[x][y+1] = SZAPOR[x][y];																ELETKOR[x][y+1] = ELETKOR[x][y];															}														}													}												}											}										}									}								}							} else {								// mozog								if (ELETTER[x-1][y] == ELEM_SEMMI) {									ELETTER[x][y] = ELEM_SEMMI;									ELETTER[x-1][y] = ELEM_KECSKE;									EHSEG[x-1][y] = EHSEG[x][y];									SZAPOR[x-1][y] = SZAPOR[x][y];									ELETKOR[x-1][y] = ELETKOR[x][y];								} else {									if (ELETTER[x][y-1] == ELEM_SEMMI) {										ELETTER[x][y] = ELEM_SEMMI;										ELETTER[x][y-1] = ELEM_KECSKE;										EHSEG[x][y-1] = EHSEG[x][y];										SZAPOR[x][y-1] = SZAPOR[x][y];										ELETKOR[x][y-1] = ELETKOR[x][y];									} else {										if (ELETTER[x+1][y] == ELEM_SEMMI) {											ELETTER[x][y] = ELEM_SEMMI;											ELETTER[x+1][y] = ELEM_KECSKE;											EHSEG[x+1][y] = EHSEG[x][y];											SZAPOR[x+1][y] = SZAPOR[x][y];											ELETKOR[x+1][y] = ELETKOR[x][y];										} else {											if (ELETTER[x][y+1] == ELEM_SEMMI) {												ELETTER[x][y] = ELEM_SEMMI;												ELETTER[x][y+1] = ELEM_KECSKE;												EHSEG[x][y+1] = EHSEG[x][y];												SZAPOR[x][y+1] = SZAPOR[x][y];												ELETKOR[x][y+1] = ELETKOR[x][y];											}										}									}								}							}						}					}					break;				case ELEM_FARKAS:					if (ELETKOR[x][y] > MH_FARKAS || EHSEG[x][y] > EH_FARKAS) {						ELETTER[x][y] = ELEM_SEMMI;					} else {						ELETKOR[x][y]++;						if (SZAPOR[x][y] > SZ_FARKAS) {							if (ELETTER[x-1][y] == ELEM_SEMMI) ELETTER[x-1][y] = ELEM_FARKAS;							else if (ELETTER[x][y-1] == ELEM_SEMMI) ELETTER[x][y-1] = ELEM_FARKAS;							else if (ELETTER[x+1][y] == ELEM_SEMMI) ELETTER[x+1][y] = ELEM_FARKAS;							else if (ELETTER[x][y+1] == ELEM_SEMMI) ELETTER[x][y+1] = ELEM_FARKAS;							SZAPOR[x][y] = 0;						} else {							SZAPOR[x][y]++;							if (EHSEG[x][y] > ESZ_FARKAS) {								if (ELETTER[x-1][y] == ELEM_KECSKE) {									ELETTER[x][y] = ELEM_SEMMI;									ELETTER[x-1][y] = ELEM_FARKAS;									EHSEG[x-1][y] = 0;									SZAPOR[x-1][y] = SZAPOR[x][y];									ELETKOR[x-1][y] = ELETKOR[x][y];								} else {									if (ELETTER[x][y-1] == ELEM_KECSKE) {										ELETTER[x][y] = ELEM_SEMMI;										ELETTER[x][y-1] = ELEM_FARKAS;										EHSEG[x][y-1] = 0;										SZAPOR[x][y-1] = SZAPOR[x][y];										ELETKOR[x1][y-1] = ELETKOR[x][y];									} else { 										if (ELETTER[x+1][y] == ELEM_KECSKE) {											ELETTER[x][y] = ELEM_SEMMI;											ELETTER[x+1][y] = ELEM_FARKAS;											EHSEG[x+1][y] = 0;											SZAPOR[x+1][y] = SZAPOR[x][y];											ELETKOR[x+1][y] = ELETKOR[x][y];										} else { 											if (ELETTER[x][y+1] == ELEM_KECSKE) {												ELETTER[x][y] = ELEM_SEMMI;												ELETTER[x][y+1] = ELEM_FARKAS;												EHSEG[x][y+1] = 0;												SZAPOR[x][y+1] = SZAPOR[x][y];												ELETKOR[x][y+1] = ELETKOR[x][y];											} else {												// mozog												if (ELETTER[x-1][y] == ELEM_SEMMI) {													ELETTER[x][y] = ELEM_SEMMI;													ELETTER[x-1][y] = ELEM_FARKAS;													EHSEG[x-1][y] = EHSEG[x][y];													SZAPOR[x-1][y] = SZAPOR[x][y];													ELETKOR[x-1][y] = ELETKOR[x][y];												} else {													if (ELETTER[x][y-1] == ELEM_SEMMI) {														ELETTER[x][y] = ELEM_SEMMI;														ELETTER[x][y-1] = ELEM_FARKAS;														EHSEG[x][y-1] = EHSEG[x][y];														SZAPOR[x][y-1] = SZAPOR[x][y];														ELETKOR[x][y-1] = ELETKOR[x][y];													} else {														if (ELETTER[x+1][y] == ELEM_SEMMI) {															ELETTER[x][y] = ELEM_SEMMI;															ELETTER[x+1][y] = ELEM_FARKAS;															EHSEG[x+1][y] = EHSEG[x][y];															SZAPOR[x+1][y] = SZAPOR[x][y];															ELETKOR[x+1][y] = ELETKOR[x][y];														} else {															if (ELETTER[x][y+1] == ELEM_SEMMI) {																ELETTER[x][y] = ELEM_SEMMI;																ELETTER[x][y+1] = ELEM_FARKAS;																EHSEG[x][y+1] = EHSEG[x][y];																SZAPOR[x][y+1] = SZAPOR[x][y];																ELETKOR[x][y+1] = ELETKOR[x][y];															}														}													}												}											}										}									}								}							} else {								// mozog								if (ELETTER[x-1][y] == ELEM_SEMMI) {									ELETTER[x][y] = ELEM_SEMMI;									ELETTER[x-1][y] = ELEM_FARKAS;									EHSEG[x-1][y] = EHSEG[x][y];									SZAPOR[x-1][y] = SZAPOR[x][y];									ELETKOR[x-1][y] = ELETKOR[x][y];								} else {									if (ELETTER[x][y-1] == ELEM_SEMMI) {										ELETTER[x][y] = ELEM_SEMMI;										ELETTER[x][y-1] = ELEM_FARKAS;										EHSEG[x][y-1] = EHSEG[x][y];										SZAPOR[x][y-1] = SZAPOR[x][y];										ELETKOR[x][y-1] = ELETKOR[x][y];									} else {										if (ELETTER[x+1][y] == ELEM_SEMMI) {											ELETTER[x][y] = ELEM_SEMMI;											ELETTER[x+1][y] = ELEM_FARKAS;											EHSEG[x+1][y] = EHSEG[x][y];											SZAPOR[x+1][y] = SZAPOR[x][y];											ELETKOR[x+1][y] = ELETKOR[x][y];										} else {											if (ELETTER[x][y+1] == ELEM_SEMMI) {												ELETTER[x][y] = ELEM_SEMMI;												ELETTER[x][y+1] = ELEM_FARKAS;												EHSEG[x][y+1] = EHSEG[x][y];												SZAPOR[x][y+1] = SZAPOR[x][y];												ELETKOR[x][y+1] = ELETKOR[x][y];											}										}									}								}							}						}					}					break;				default:					break;				}			}		}	}}