powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Составить программу, циклически перемещающую Вашу фамилию по экрану
2 сообщений из 2, страница 1 из 1
Составить программу, циклически перемещающую Вашу фамилию по экрану
    #38090258
mr.davidos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Необходима реализация на Си данного задания:

Составить программу, циклически перемещающую Вашу фамилию по экрану

а) по вертикали снизу вверх,
б) по горизонтали слева направо.
В начале нового цикла должен случайно меняться цвет надписи.


Нужна помощь в написании или просто подскажите в сторону каких функций смотреть
...
Рейтинг: 0 / 0
Составить программу, циклически перемещающую Вашу фамилию по экрану
    #38090521
m_Sla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Windows консольное приложение. По горизонтали слева направо. Остальное сам допилишь.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
#include <iostream>
#include <windows.h>

using namespace std;
//===================================================================
void set_pos(short x, short y)
{
    #ifdef WIN32
        COORD Coords;

        Coords.X=x;
        Coords.Y=y;
        SetConsoleCursorPosition( GetStdHandle(STD_OUTPUT_HANDLE), Coords);
    #endif
}
//===================================================================
void ClearScreen()
{
    #ifdef WIN32
        HANDLE                     hStdOut;
        CONSOLE_SCREEN_BUFFER_INFO csbi;
        DWORD                      count;
        DWORD                      cellCount;
        COORD                      homeCoords = { 0, 0 };

        hStdOut = GetStdHandle( STD_OUTPUT_HANDLE );
        if (hStdOut == INVALID_HANDLE_VALUE) return;

        /* Get the number of cells in the current buffer */
        if (!GetConsoleScreenBufferInfo( hStdOut, &csbi )) return;
        cellCount = csbi.dwSize.X *csbi.dwSize.Y;

        /* Fill the entire buffer with spaces */
        if (!FillConsoleOutputCharacter(hStdOut,(TCHAR)' ',cellCount,homeCoords,&count)) return;

        /* Fill the entire buffer with the current colors and attributes */
        if (!FillConsoleOutputAttribute(hStdOut,csbi.wAttributes,cellCount,homeCoords,&count)) return;

        /* Move the cursor home */
        SetConsoleCursorPosition( hStdOut, homeCoords );
    #endif
}
//===================================================================
void set_text_color(unsigned short color)
{
    #ifdef WIN32
        SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), color);
    #endif
}
//===================================================================
void sleep(unsigned long Milliseconds)
{
    #ifdef WIN32
        Sleep(Milliseconds);
    #endif
}
//===================================================================
int main()
{
    for(int i=0; i<25; i++)
    {
        sleep(100);             // задержка 100мс
        ClearScreen();          // очищаем экран

        set_pos(i, 10);         // устанавливаем курсор в новую позицию
        set_text_color(i & 15); // устанавливаем цвет
        cout<<"asdfgh";         // выводим сообщение
    }

    set_text_color(7);
    return 0;
}


...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Составить программу, циклически перемещающую Вашу фамилию по экрану
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]