#include #include char pi[4000], _0[2][8][28] = { { {0,2,2,2,2,2,0,0,0, 0,0,0,0,2,2,0,0,0,0, 0,0,2,0,0,0,0,2,0}, {2,3,3,3,3,3,2,0,0, 0,0,0,2,3,3,2,0,0,0, 0,2,3,2,0,0,2,3,2}, {2,3,2,2,2,2,3,2,0, 0,0,2,3,2,2,3,2,0,0, 0,2,3,3,2,0,2,3,2}, {2,3,2,0,0,2,3,2,0, 0,2,3,2,0,0,2,3,2,0, 0,2,3,2,3,2,2,3,2}, {2,3,2,0,0,2,3,2,0, 0,2,3,2,0,0,2,3,2,0, 0,2,3,2,2,3,2,3,2}, {2,3,2,2,2,2,3,2,0, 0,0,2,3,2,2,3,2,0,0, 0,2,3,2,0,2,3,3,2}, {2,3,3,3,3,3,2,0,0, 0,0,0,2,3,3,2,0,0,0, 0,2,3,2,0,0,2,3,2}, {0,2,2,2,2,2,0,0,0, 0,0,0,0,2,2,0,0,0,0, 0,0,2,0,0,0,0,2,0} }, { {1,0,0,0,0,1,0, 0,0,1,1,0,0,0, 1,1,1,0,0,1,0, 0,0,1,1,1,1,0}, {1,0,0,0,0,1,0, 0,1,0,0,1,0,0, 1,0,0,1,0,1,0, 0,1,0,0,0,0,0}, {1,0,0,0,0,1,0, 1,0,0,0,0,1,0, 1,0,0,0,1,1,0, 1,0,0,0,0,0,0}, {0,1,1,1,1,1,0, 1,0,0,0,0,1,0, 1,0,0,0,0,1,0, 1,0,0,0,0,0,0}, {0,0,0,0,0,1,0, 1,1,1,1,1,1,0, 1,0,0,0,0,1,0, 1,0,0,1,1,0,0}, {0,0,0,0,0,1,0, 1,0,0,0,0,1,0, 1,0,0,0,0,1,0, 1,0,0,0,0,1,0}, {0,0,0,0,1,0,0, 1,0,0,0,0,1,0, 1,0,0,0,0,1,0, 0,1,0,0,0,1,0}, {0,1,1,1,0,0,0, 1,0,0,0,0,1,0, 1,0,0,0,0,1,0, 0,0,1,1,1,0,0} } }, _6; int far *_ = (int far *)0xb8000000, Pi[2000], _7[16] = {0x0000, 0x0adc, 0x07dc, 0x0fdc, 0x0adf, 0x0adb, 0x7adf, 0x7adf, 0x70dc, 0x7adc, 0x77dc, 0x7fdc, 0x0fdf, 0x7adc, 0x7fdf, 0x0fdb}; _4 = 112, _5 = 1, _8, _9, s, i, n; double c = 0, o = 0, _1[224], _2[224], _3[224], Sin, Cos, Tan, PI = 3.141592653589793; void cdecl main(void) { for(s = 0; s < 2000;) Pi[s++] = _[s]; while( !kbhit() ) { for(s = 4000; s > 0;) pi[--s] = 0; n = 0; for(; s < 8; s++) { Sin = sin(Tan = (s + 9) * PI / 50); for(i = 0; i < 28; i++) { _1[n] = Sin * cos(Cos = (o + i * PI / 25)); _3[n] = Sin * sin(Cos); _2[n++] = cos(Tan); } } Sin = sin(c); Cos = cos(c); for(s = 224; s > 0;) { Tan = _2[--s]; _2[s] = Cos * _2[s] - Sin * _3[s]; _3[s] = Cos * _3[s] + Sin * Tan; } n = 0; for(; s < 8; s++) { for(i = 0; i < 28; i++) { if( (_6 = (_4 > 4 * i) ? _0[0][s][i] : _0[1][s][i]) > 0 ) { _8 = (int)(1900 * _1[n] / (Cos = (100 * _3[n] + 115)) + 40); _9 = (int)(1900 * _2[n] / Cos + 25); if( _9 >= 0 && _9 < 50 ) pi[_9 * 80 + _8] = _6; } n++; } } c = fmod(c + PI / 91, Tan = 2 * PI); o = fmod(o + PI / 79, Tan); _4 += _5; if( _5 > 0 ) { if( _4 > 315 ) _5 = -1; } else { if( _4 < -285 ) _5 = 1; } while(inp(986) & 8); while(!(inp(986) & 8)); for(i = 0; i < 50; i += 2) { for(s = 0; s < 80;) { _[40 * i + s++] = _7[pi[n = (i * 80 + s)] * 4 | pi[n + 80] ]; } } } for(s = 0; s < 2000;) _[s++] = Pi[s]; if( !getch() ) getch(); }