Загрузка...

Dancing in the C-C++ console

Thread in C/C++ created by ManiHf Jun 9, 2022. 248 views

  1. ManiHf
    ManiHf Topic starter Jun 9, 2022 1 Jun 9, 2022
    Это моя первая тема
    сделал её чтобы посмотреть как работают темы в лолзи
    кароче привет всем сегодня мы постараемся сделать дискотеку в консоли с помощью 2 братских яп
    а именно с и с++

    для начала немного о том что мы будем делать
    мы будем использовать такую функцию как getch

    getch - Считывает символ с клавиатуры и немедленно передаёт её управление вызвавшей ее функции
    ( считанный символ не выводиться на экран в консоли)


    getch можно использовать в конце вашей программы чтобы она сразу не закрылась
    я думаю вы видели такой код на С где в конце стоит getch ();


    для начала сделаем мини программу которая покажет вам как работает getch :finger_up:
    вот например программа смотрит нажал ли пользователь S или нет

    #include <iostream>

    #include <stdio.h>
    #include <conio.h>
    using namespace std;
    int main ()
    {
    cout << " Enter S:";
    char S = getch();
    if (S == 'S') cout <<
    "\n YEEES S";
    else cout << "\n NO S";
    sleep (4);
    exit (1);
    return 0;
    }

    Вывод программы выглядит так

    [IMG] [IMG]

    теперь перейдём к написанию самой мини игры
    суть программы в том что маленький квадрат будет передвигаться по линии вперёд и назад
    а вместе с этим будет меняться цвет фона
    а дальше уже можно будет её дополнить своими приколами :roflanebalo:
    вот вам код со всем

    #include <iostream>
    #include <stdio.h>
    #include <conio.h>
    #include <windows.h>
    using namespace std;
    int main ()
    {
    cout << "\t\t\t\t THE BEST DISCO\n";
    system("color 0F");
    while (1)
    {
    system("color 10");
    Sleep(5);
    system("color ");
    Sleep(5);
    char C = getch();
    system("color 20");
    if (C == 'a')
    {
    cout << "\n\n||_____\b\b@_____||\n";
    Sleep(30);
    system ("cls");
    }
    system("color 90");
    Sleep(5);
    if (C == 'd')
    {
    cout << "\n\n||_____@\b@\b@_____||\n";
    Sleep(30);
    system ("cls");
    }
    Sleep(5);
    system("color C0");
    Sleep(5);
    system("color 60");
    }
    return 0;
    }


    получилась большая лажа с фоном и с скоростью и вообще программа работает плохо но я пытался сделать её понятной и чтобы вы поняли
    что есть getch и другие такие функции, а так эту программу можно сделать круче
    ну кароче вы поняли что крутого можно сделать
     
  2. densetsukun
    Круто, но могу что посоветовать. Если пишешь консольные игры, то не используй
    system("cls")
    просто если будешь писать что-то сложнее, то у тебя будет плохой фреймрейт. Бест практис сетать непосредственно символы в консоли.
     
    1. ManiHf Topic starter
      densetsukun, спасибо большое за совет :finger_up:
      и я вообще слышал что не стоит особо соединять с и с++
      а так спасибо большое
Top
Loading...