Advertisement
Guest User

Untitled

a guest
Dec 12th, 2019
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.95 KB | None | 0 0
  1. #include <ctime>
  2. #include <iostream>
  3. #include <windows.h>
  4.  
  5. HANDLE instancjaKonsoli;
  6. CONSOLE_SCREEN_BUFFER_INFO iOK1, iOK2;
  7.  
  8. void rysujLinie() {
  9. for (int i = 0; i < iOK1.dwSize.X - 1; i++)
  10. std::cout << "#";
  11. std::cout << std::endl;
  12. }
  13.  
  14. void rysujRamke() {
  15. SetConsoleTextAttribute(instancjaKonsoli, 0b100); // Czerwony
  16. rysujLinie();
  17. for (int i = 0; i < iOK1.dwSize.Y / 1.5; i++) {
  18. std::cout << "#";
  19. for (int j = 0; j < iOK1.dwSize.X - 3; j++)
  20. std::cout << " ";
  21. std::cout << "#" << std::endl;
  22. }
  23. rysujLinie();
  24. SetConsoleTextAttribute(instancjaKonsoli, 0b111); // Bialy
  25. }
  26.  
  27. void rysujChoinke() {
  28. SetConsoleTextAttribute(instancjaKonsoli, 0b010); // Zielony
  29.  
  30. for (int i = 5; i < 14; i++) {
  31. SetConsoleCursorPosition(instancjaKonsoli, {iOK1.dwCursorPosition.X + 43 - i,
  32. iOK1.dwCursorPosition.Y + i});
  33. for (int a = 1; a < i - 3; a++)
  34. std::cout << "##";
  35. }
  36.  
  37. SetConsoleCursorPosition(instancjaKonsoli, {iOK1.dwCursorPosition.X + 37,
  38. iOK1.dwCursorPosition.Y + 14});
  39. std::cout << "####";
  40.  
  41. SetConsoleTextAttribute(instancjaKonsoli, 0b111); // Bialy
  42. }
  43.  
  44. int main() {
  45. short kolor;
  46. std::string wejscie;
  47.  
  48. system("cls");
  49.  
  50. std::srand(std::time(nullptr));
  51. setlocale(LC_ALL, ""); // obsluga polskich znakow
  52. instancjaKonsoli = GetStdHandle(STD_OUTPUT_HANDLE); // przypisanie instancji konsoli do zmiennej
  53. GetConsoleScreenBufferInfo(instancjaKonsoli, &iOK1);
  54.  
  55. rysujRamke();
  56. GetConsoleScreenBufferInfo(instancjaKonsoli, &iOK2);
  57.  
  58. rysujChoinke();
  59. SetConsoleCursorPosition(instancjaKonsoli, iOK2.dwCursorPosition);
  60.  
  61. while (true) {
  62. kolor = std::rand() % 8;
  63. while (kolor == 0)
  64. kolor = std::rand() % 8;
  65. SetConsoleTextAttribute(instancjaKonsoli, kolor);
  66. std::cout << std::endl << "Polskie znaki ęóąśłżźćń";
  67. GetConsoleScreenBufferInfo(instancjaKonsoli, &iOK2);
  68. SetConsoleCursorPosition(instancjaKonsoli, {0, iOK2.dwCursorPosition.Y - 1});
  69. Sleep(1000);
  70. }
  71.  
  72. return 0;
  73. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement