int main () { int n = 0; SortingAlgorithm sortAlgArray[SORT_ALG_ARRAY_SIZE] = { SortingAlgorithm ( bubbleSort, { 12, 205, 90}, n++, Mode (0, 2)), SortingAlgorithm ( selectionSort, {205, 12, 90}, n++, Mode (0, 2)), SortingAlgorithm ( insertionSort, { 12, 90, 205}, n++, Mode (0, 2)), SortingAlgorithm (binaryInsertionSort, {112, 90, 155}, n++, Mode (0, 2)) }; Button buttonArray[BUTTON_ARRAY_SIZE] = { Button (Point ( 0, 0), 0, 0, "BubbleSort" ), Button (Point ( 0, 0), 0, 0, "SelectionSort" ), Button (Point ( 0, 0), 0, 0, "InsertionSort" ), Button (Point ( 0, 0), 0, 0, "BinaryInsertionSort"), Button (Point (130, 405), 140, 30, "Now watching:" ), Button (Point ( 4, 367), 56, 26, "Play/Stop" ) }; distributeButtons (buttonArray, BUTTON_ARRAY_SIZE, 4, Point (654, 140), Point (954, 440)); Mode mode = Mode(COMPS, 3), updateGraphic = Mode( 1, 2); _txWindowStyle &= ~WS_CAPTION; txCreateWindow (WIDTH, HEIGHT); txTextCursor (false); HDC background = txLoadImage ("sortTube.bmp"); assert (background); while (!GetAsyncKeyState (VK_ESCAPE)) { txBegin (); txBitBlt (txDC (), 0, 0, 960, 480, background); txClearConsole (); calculations (sortAlgArray, SORT_ALG_ARRAY_SIZE, buttonArray, BUTTON_ARRAY_SIZE, &mode, &updateGraphic); //rendering (sortAlgArray, SORT_ALG_ARRAY_SIZE, buttonArray, BUTTON_ARRAY_SIZE, mode); txEnd (); txSleep (1000/30); } txDeleteDC (background); return 0; }
int main() { txCreateWindow (800, 600); DrawFrame(); DrawEarth(); DrawHello(); DrawMan(); DrawFlag(); txTextCursor (false); return 0; }
void fizic () { int i = 0, k = 0; CBall Mol [3200] = {}; CBall Mol2 [3200] = {}; txTextCursor (false); double time = 0; int davlenK = 0, davlenK_s = 0; int davlenN = 0, davlenN_s = 0; int K = 0, N = 0; int t = 0; double X_Sten = XWindow / 2, X_Sten_S = XWindow / 2; double temper = 0; double temper_s = 0; int Zoom = 0; int interv = 0; int l1 = 0, l2 = 0; Dlya_Graf (); HDC Molekula = txLoadImage ("Image//Молекула гелия.bmp"); HDC Molekula2 = txLoadImage ("Image//Молекула 3.bmp"); Mass1 (Mol , N); Mass2 (Mol2, K); text ("Для помощи нажмите I", XWindow / 2 + 30, YWindow - 40, TX_GREEN, 30, 8); while (!GetAsyncKeyState (VK_ESCAPE)) { txBegin (); kolba (); //txSetColor (TX_WHITE); //Clear (XWindow - 510, YWindow - 90, XWindow - 120, YWindow - 10); txSetColor (RGB(0, 0, 255), 7); txLine (X_Sten, 250, X_Sten, YWindow); if (GetAsyncKeyState (VK_RIGHT)) X_Sten ++; if (GetAsyncKeyState (VK_LEFT)) X_Sten --; else if (X_Sten < 200 && i + k > 150) X_Sten += 0.25; if (X_Sten > XWindow / 2) X_Sten = XWindow / 2; if (X_Sten < 125) X_Sten = 125; Ottalkiv (i, Mol, &temper); Ottalkiv (k, Mol2, &temper); for (K = 0; K < k; K++) { Molek (&Mol2 [K], X_Sten); kart (&Mol2 [K], Molekula2); if (Mol2[K].y - Mol2[K].rad == 250)davlenK += 2; temper += temp (Mol2 [K].vx, Mol2 [K].vy); //if (GetAsyncKeyState ('G')) Mol2 [K].vy -= 0.05; } for (N = 0; N < i; N++) { Molek (&Mol [N], X_Sten); kart (&Mol [N], Molekula); if (Mol[N].y - Mol[N].rad == 250) davlenN ++; temper += temp (Mol [N].vx, Mol [N].vy); //if (GetAsyncKeyState ('G')) Mol [N].vy -= 0.05; } if (t > 75) { Manometr (davlenK, XWindow / 2 - 150, 110, TX_WHITE, "Давление оранжевых:"); Manometr (davlenN, XWindow / 2 - 350, 110, TX_WHITE, "Давление зеленых:"); Grafik (X_Sten_S + XWindow / 2 - 100/*XWindow / 2 + time + 2*/, temper_s / 5, X_Sten + XWindow / 2 - 100/*XWindow / 2 + time + 2 + 0.05 * 75*/, temper / 5); t = 0; davlenK_s = davlenK; davlenN_s = davlenN; temper_s = temper; X_Sten_S = X_Sten; davlenK = 0; davlenN = 0; } if (temper > 70000) { while (Zoom < 2500) { vzriv (Zoom, X_Sten / 2, YWindow / 2); Zoom += 10; txSleep (0); } text ("Максимальная температура превышена :(", XWindow / 2 - 500, YWindow / 2, RGB(0, 255, 0), 50, 25); //txMessageBox ("Вы взорвались!", ":( :(", 2); /*if (txMessageBox ("Вы взорвались!", ":( :(", 2) == IDABORT) _txExit = true;*/ break; //if (txMessageBox ("Вы взорвались!", ":( :(", 2) == IDABORT) } Manometr (i + k, 150, 110, TX_WHITE, "Количество:"); if (temper > 50000) { text ("!!!Температура очень высокая!!!", XWindow - 500, YWindow - 50, RGB(255, 0, 0), 25, 12); Manometr (temper, 370, 110, RGB (255, 255 - (temper - 50000) * 255 / 20000, 255 - (temper - 50000) * 255 / 20000), "Температура:"); } else { Manometr (temper, 370, 110, TX_WHITE, "Температура:"); } if (i == 0) if (peregorodka() == true) i += 1; if (i > 0 && i < 3200) if (peregorodka() == true && l1 > 2) { i += 1; l1 = 0; } if (k == 0) if (peregorodka2() == true) k += 1; if (k > 0 && k < 3200) if (l2 > 4 && peregorodka2() == true) { k += 1; l2 = 0; } if (GetAsyncKeyState ('R')) { i = 0, k = 0; Mass1 (Mol, N); Mass2 (Mol2, K); } if (GetAsyncKeyState ('W') && i > 0) { i--; Mol [i].x = 0; Mol [i].y = 325; } if (GetAsyncKeyState ('X') && k > 0) { k--; Mol [k].x = 0; Mol [k].y = YWindow - 75; } if (GetAsyncKeyState ('I')) { text ("Нажмите A что-бы добавить молекулу 1 вида", 30, YWindow / 2 - 90, TX_GREEN, 30, 8); text ("Нажмите D что-бы добавить молекулу 2 вида", 30, YWindow / 2 - 55, TX_GREEN, 30, 8); text ("Нажмите W что-бы удалить молекулу 1 вида", 30, YWindow / 2 - 20, TX_GREEN, 30, 8); text ("Нажмите X что-бы удалить молекулу 2 вида", 30, YWindow / 2 + 20, TX_GREEN, 30, 8); text ("Нажмите R что-бы удалить молекулы всех видов", 30, YWindow / 2 + 90, TX_GREEN, 30, 8); text ("Движение перегородки стрелками", 30, YWindow / 2 + 55, TX_GREEN, 30, 8); //text ("Нажмите G и включится гравитация", 30, YWindow / 2 + 125, TX_GREEN, 30, 8); } l1 ++; l2 ++; time += 0.05; t++; interv++; temper = 0; txEnd (); } txDeleteDC (Molekula); txDeleteDC (Molekula2); }
int main (int argc, char **argv) { if (argc != 2) { txMessageBox("Haven't file for play"); return 1; } txTextCursor (false); txCreateWindow (1080, 720); txSetFillColor (TX_WHITE); const char* logf = "DATA/log.txt"; FILE* log = fopen (logf, "a"); fprintf (log, "\n\n=========hulc started=========\n"); FILE* read = fopen (argv[1], "r"); COLORREF cvet = TX_WHITE; Stack stk = {}; double pushch = 0; double deystvie = 0; int cmd = 0; int element = 0; double proga[MAXSYMBOLINCOMMANDFILE]; fprintf (log, "\n\n\n=========hulc read and printf to array of programm do =========\n"); for ( ; element <= MAXSYMBOLINCOMMANDFILE; element++) { txSetColor (cvet); txSetFillColor (cvet); fscanf (read, "%lg", &deystvie); proga[element] = deystvie; fprintf (log, "hulc printf to array of programm %lg\n", deystvie); /* switch (deystvie) { case cmdLINE: proga[element] = cmdLINE; element++; break; case cmdBUCKET: proga[element] = cmdBUCKET; element++; break; case cmdJUMP: proga[element] = cmdJUMP; element++; break; case cmdOUT: proga[element] = cmdOUT; element++; break; case cmdCOLOR: proga[element] = cmdCOLOR; element++; break; case cmdCIRCLE: proga[element] = cmdCIRCLE; element++; break; case cmdRECTANGLE: proga[element] = cmdRECTANGLE; element++; break; case cmdTRIANGLE: proga[element] = cmdTRIANGLE; element++; break; case cmdADD: proga[element] = cmdADD; element++; break; case cmdPUSH: proga[element] = cmdPUSH; element++; fscanf (read, "%lg", &pushch); proga[element] = pushch; element++; break; case cmdPUSHR: proga[element] = cmdPUSHR; element++; fscanf (read, "%lg", &stk.ireg); proga[element] = stk.ireg; element++; break; case cmdPOPR: proga[element] = cmdPOPR; element++; fscanf (read, "%lg", &stk.ireg); proga[element] = stk.ireg; element++; break; case cmdSUB: proga[element] = cmdSUB; element++; break; case cmdMUL: proga[element] = cmdMUL; element++; break; case cmdDIV: proga[element] = cmdDIV; element++; break; case cmdEXIT: proga[element] = cmdEXIT; break; }*/ } element++; proga[element] = cmdEXIT; fprintf (log, "\n\n======hulc end read program and he start do this is program======\n\n\n"); deystvie = 0; pushch = 0; element = 0; stk.ireg = 0; pushch = 0; stk.ireg = 0; for (int i = 0; i <= MAXSYMBOLINCOMMANDFILE; i++) { txSetColor (cvet); txSetFillColor (cvet); cmd = proga[element]; switch (cmd) { case cmdCOPY: copynum (&stk); element++; break; case cmdLINE: line (&stk); element++; break; case cmdPUSH: element++; pushch = proga[element]; stk.push (pushch); element++; break; case cmdBUCKET: clearw (&stk); element++; break; case cmdOUT: out (&stk); element++; break; case cmdJUMP: jump (&stk, &element); break; case cmdCOLOR: color (&stk, &cvet); element++; break; case cmdCIRCLE: circle (&stk); element++; break; case cmdRECTANGLE: rectangle (&stk); element++; break; case cmdTRIANGLE: triangle (&stk); element++; break; case cmdADD: stk.Vplus (); element++; break; case cmdPUSHR: element++; stk.ireg = proga[element]; stk.pushr (stk.ireg); element++; break; case cmdPOPR: element++; stk.ireg = proga[element]; stk.popr (stk.ireg); element++; break; case cmdSUB: stk.Vminus (); element++; break; case cmdMUL: stk.Vumnozhity (); element++; break; case cmdDIV: stk.Vdeleniye (); element++; break; case cmdIN: in(&stk); element++; break; case cmdEXIT: fprintf (log, "\n\n ========hulc end do programm, number 0========"); return 0; default: txMessageBox ("ERROR Code, program end.", "hulc"); fprintf (log, "ERROR Code, number 2\n"); return 1; } fprintf (log, "hulc do %d\n", cmd); } fprintf (log, "\n\n ========hulc end do programm, number 3 (but you haven't gave me cmdEXIT(you luser:) ))========"); return 3; }
int main() { txCreateWindow(SX * 2, SY * 2); txTextCursor(false); SetWindowText(txWindow(), "Illusions"); Illusions illus[ILLUSIONS] = {}; HDC skins[ILLUSIONS] = {txLoadImage("WTF.bmp"), txLoadImage("Cat.bmp"), txLoadImage("Packman.bmp"), txLoadImage("Spiral.bmp"), txLoadImage("Sphere.bmp"), txLoadImage("Figure.bmp"), txLoadImage("DINOSOWER.bmp"), txLoadImage("Packman2.bmp"), txLoadImage("Cab.bmp"), txLoadImage("Cab2.bmp"), txLoadImage("Head.bmp"), txLoadImage("6terna.bmp"), txLoadImage("6terna4.bmp"), txLoadImage("bike.bmp"), txLoadImage("Ўарик.bmp"), txLoadImage("fish.bmp"), txLoadImage("kriper.bmp"), txLoadImage("WTF2.bmp"), txLoadImage("kub.bmp"), txLoadImage("water.bmp"), txLoadImage("serdce.bmp")}; HDC transparent = txLoadImage("Transparent5.bmp"); double x = -450, y = 25; for(int i = 0; i < ILLUSIONS; i++) illus[i].SetSkin(skins[i]); illus[0].show = true; while(!Key(27)) { txBegin(); txSetFillColor(TX_BLACK); txClear(); for(int i = 0; i < ILLUSIONS; i++) { if(illus[i].show) { txBitBlt(txDC(), illus[i].x, illus[i].y, X_DEST * 2, Y_DEST * 2, illus[i].skin, 0, 0); if(Key('1')) { if(i > 0) illus[i].show = false, illus[i - 1].show = true; else illus[i].show = false, illus[ILLUSIONS - 1].show = true; } if(Key('2')) { if(i < ILLUSIONS - 1) illus[i].show = false, illus[i + 1].show = true; else illus[i].show = false, illus[ 0].show = true; } while(Key('1') || Key('2')) txSleep (1); } } if(Key(VK_LEFT )) x -= 0.25; if(Key(VK_RIGHT)) x += 0.25; if(Key(VK_UP )) y--; if(Key(VK_DOWN )) y++; txTransparentBlt(txDC(), x, y, X_DEST * 4, Y_DEST * 2, transparent, 0, 0, TX_WHITE); txEnd(); } txDeleteDC(transparent); return 0; }