Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Умножение и деление комплексных чисел Неправильно умножаются и делятся комплексные числа Код: Main ComplexNumbers A; A.ReadComplexNumbers(); ComplexNumbers B; //B.ReadComplexNumbers(); cout << "Демонстрация операции сложения"... https://www.cyberforum.ru/ cpp-beginners/ thread2496824.html C++ Вычисление значений степенных полиномов по схеме Горнера
Помогите сделать ,не могу понять.Сделать восьмой вариант.Очень благодарен любой помощи.Если возможно прошу сделать код программы для Dev.
C++ Изучаю паттерн Visitor https://www.cyberforum.ru/ cpp-beginners/ thread2496811.html
Не могу до конца понять смысл и реализацию. Для изучения дан вот такой пример... На каждую операцию над объектами иерархии мы могли бы заводить по отдельному виртуальному методу, но такой подход...
C++ Композиция и Наследование классов Что это за ошибки и как их решить? https://www.cyberforum.ru/attachment.php?attachmentid=1064671&stc=1&d=1567621843 Employee.h #pragma once #include <cstdlib> #include <vector> #include... https://www.cyberforum.ru/ cpp-beginners/ thread2496778.html
Задачка(шахматы) C++
На шахматной доске находятся черный король и две белых ладьи(ладьи бьет по горизонтали и вертикали). Проверить находится ли король под угрозой и если да, кто ему угрожает.
C++ Написать блок-схему https://www.cyberforum.ru/ cpp-beginners/ thread2496759.html
Добрый день,такое дело значит,дали мне задание по C++,но попросили нарисовать для начала блок-схему и что-то вот не доходит до меня,как правильно её нарисовать к этому заданию. Если не сложно...
C++ Определить, является ли одна последовательность циклическим сдвигом другой https://www.cyberforum.ru/ cpp-beginners/ thread2496757.html
Задано число N и две последовательности целых чисел длины N. Определить, является ли одна циклическим сдвигом другой. примеры: Можно использовать библиотеки iostream, string, vector, iomanip: 1)...
Задача D. Код да Винчи [C] C++
Имя входного файла: стандартный ввод Имя выходного файла: стандартный вывод Ограничение по времени: 1 секунда Ограничение по памяти: 256 мегабайт Профессор Роберт Лэнгдон, как обычно, попал в...
C++ Попадает ли точка в заштрихованную область? https://www.cyberforum.ru/ cpp-beginners/ thread2496735.html
Здравствуйте помогите написать код для прикрепленной картинки. Нужно чтобы заданная точка попадала в заштрихованную область.
C++ Решение задачи B: "Я знаю кунг-фу" [C] Задача B. Я знаю кунг-фу Имя входного файла: стандартный ввод Имя выходного файла: стандартный вывод Ограничение по времени: 0.5 секунд Ограничение по памяти: 256 мегабайт Морфеус и Нео... https://www.cyberforum.ru/ cpp-beginners/ thread2496726.html
Вычисление арктангенса разложением в ряд (нужна блок-схема) C++
arctgx=Pi/2-1/x+1/3x^3-1/5x^5+... , x>1
C++ Упорядочить по убыванию два данных набора через ссылки Описать процедуру SortDec3(A, B, C), меняющую содержимое переменных A, B, C таким образом, чтобы их значения оказались упорядоченными по убыванию (A, B, C — вещественные параметры, являющиеся... https://www.cyberforum.ru/ cpp-beginners/ thread2496682.html
бах-бах и в продакшен!
2979 / 1598 / 562
Регистрация: 23.09.2014
Сообщений: 4,934
Записей в блоге: 4
05.09.2019, 05:17 0

Вот такая проблема 'clrscr' was not declared in this scope - C++ - Ответ 13807798

05.09.2019, 05:17. Показов 1037. Ответов 3
Метки (Все метки)

Ответ

LambadaS,

Анимированный шестиугольник

C++
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
#include <windows.h>
#include <iostream>
#include <math.h>
#include <conio.h>
 
const float DELT_PI = 6.28f/6;
 
///----------------------------------------------------------------------------|
/// Класс для рисования гексы.
///----------------------------------------------------------------------------:
struct sGexagon
{   sGexagon(float r) : radius(r),
                        deltax(0.f),
                        deltay(0.f),
                        rot   (0.f)
    {       hWnd     = GetConsoleWindow();
            hDC      = GetDC(hWnd);
            cP       = CreatePen(PS_SOLID, 7, RGB(0,255,0));
            cP_black = CreatePen(PS_SOLID, 7, RGB(0,0,0));
        SelectObject(hDC, cP);
    }
    
    struct sPlot
    {   float x;
        float y;
    };
    
    void draw()
    {   POINT pp; 
 
        sPlot p = get(0);
        for(int i = 0; i < 6; i++)
        {   MoveToEx(hDC, p.x, p.y,  &pp);
            p = get(i+1);
            LineTo(hDC, p.x, p.y);
        }
    }
    
    void move(float x, float y)
    {   deltax = x;
        deltay = y;
    }
    
    void color(int r, int g, int b)
    {   /// TODO: закрыть предыдущий пен?!
        DeleteObject(cP);
        cP = CreatePen(PS_SOLID, 7, RGB(r,g,b));
        SelectObject(hDC, cP);
    }
    
    void cls()
    {   SelectObject(hDC, cP_black);
        draw();
        SelectObject(hDC, cP);
    }
    
    float rot;
private:
    float radius;
    float deltax, deltay;
    HWND  hWnd;
    HDC   hDC;
    HPEN  cP, cP_black;
    sPlot get(int a)
    {   sPlot p;
        p.x = radius * sin(DELT_PI*a + rot) + deltax;
        p.y = radius * cos(DELT_PI*a + rot) + deltay;
        return p;
    }
};
 
///----------------------------------------------------------------------------|
/// Градусы в радианы.(для удобства управления).
///----------------------------------------------------------------------------:
float to_rad(float gradus){ return 6.28f * gradus / 360;}
 
///----------------------------------------------------------------------------|
/// Анимация гексы.
///----------------------------------------------------------------------------:
class cAnimation
{   
    sGexagon* gex;
public:
    cAnimation(sGexagon* _gex) : gex(_gex)
    {   anim();
    }
    
    void anim()
    {   gex->color(0, 255, 255); 
        float x = 100.f;
        float y;
        float m = 1.f;
        while(true)
        {   for(int i = 0; i < 360; i++)
            {   gex->move(x, 120.f+y);
                gex->rot += m * to_rad(1.5f);
                gex->draw();
                Sleep(20);
                gex->cls();
                x += m * 1.f;
                y = 50.f * sin(2.f*to_rad(i));
            }
            m *= -1.f;
        }
    }
};
 
///----------------------------------------------------------------------------|
/// Старт.
///----------------------------------------------------------------------------:
int main()
{   setlocale(0, "");
 
    sGexagon gex(100.f);
    
    std::cout << "\rЗеленная гекса...";
    gex.move(100.f, 130.f);
    gex.draw();
    
    _getch();
    gex.cls();
    
    std::cout << "\rКрасная гекса...";
    gex.color(255, 0, 0);   // Цвет.
    gex.move(150.f, 150.f); // Позиция.
    gex.rot = to_rad(15);   // Вращение.
    gex.draw();
    
    _getch();
    gex.cls();
    
    std::cout << "\rАнимация гексы...";
    cAnimation animation(&gex);
    
    return 0;
}

пусть организация анимации сделана и примитивненько на коленке,
но сам принцип, надеюсь, будет понятен.

Добавлено через 27 минут
ну и напоследок отрисовка любых правильных многоугольников.
если сторон много, то получаем круг
C++
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
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
#include <windows.h>
#include <iostream>
#include <math.h>
#include <conio.h>
 
const float PI_2 = 6.28f;
 
///----------------------------------------------------------------------------|
/// Класс для рисования гексы.
///----------------------------------------------------------------------------:
struct sGexagon
{   sGexagon(float r) : radius (r),
                        deltax (0.f),
                        deltay (0.f),
                        rot    (0.f),
                        DELT_PI(PI_2/6),
                        side_  (6)
    {       hWnd     = GetConsoleWindow();
            hDC      = GetDC(hWnd);
            cP       = CreatePen(PS_SOLID, 7, RGB(0,255,0));
            cP_black = CreatePen(PS_SOLID, 7, RGB(0,0,0));
        SelectObject(hDC, cP);
    }
    
    struct sPlot
    {   float x;
        float y;
    };
    
    void draw()
    {   POINT pp; 
 
        sPlot p = get(0);
        for(int i = 0; i < side_; i++)
        {   MoveToEx(hDC, p.x, p.y,  &pp);
            p = get(i+1);
            LineTo(hDC, p.x, p.y);
        }
    }
    
    void move(float x, float y)
    {   deltax = x;
        deltay = y;
    }
    
    void color(int r, int g, int b)
    {   /// TODO: закрыть предыдущий пен?!
        DeleteObject(cP);
        cP = CreatePen(PS_SOLID, 7, RGB(r,g,b));
        SelectObject(hDC, cP);
    }
    
    void cls()
    {   SelectObject(hDC, cP_black);
        draw();
        SelectObject(hDC, cP);
    }
    
    void side(int n)
    {   DELT_PI = PI_2/n;
        side_   = n;
    }
    
    float rot;
private:
    float radius;
    float deltax, deltay;
    HWND  hWnd;
    HDC   hDC;
    HPEN  cP, cP_black;
    float DELT_PI;
    int   side_;
    
    sPlot get(int a)
    {   sPlot p;
        p.x = radius * sin(DELT_PI*a + rot) + deltax;
        p.y = radius * cos(DELT_PI*a + rot) + deltay;
        return p;
    }
};
 
///----------------------------------------------------------------------------|
/// Градусы в радианы.(для удобства управления).
///----------------------------------------------------------------------------:
float to_rad(float gradus){ return 6.28f * gradus / 360;}
 
///----------------------------------------------------------------------------|
/// Анимация гексы.
///----------------------------------------------------------------------------:
class cAnimation
{   
    sGexagon* gex;
public:
    cAnimation(sGexagon* _gex) : gex(_gex)
    {   anim();
    }
    
    void anim()
    {   float x = 100.f;
        float y;
        float m = 1.f;
        while(true)
        {   for(int i = 0; i < 360; i++)
            {   gex->move(x, 120.f+y);
                gex->rot += m * to_rad(1.5f);
                gex->draw();
                std::cout << "\rАнимация желтого круга...";
                Sleep(20);
                gex->cls();
                x += m * 1.f;
                y = 50.f * sin(2.f*to_rad(i));
            }
            m *= -1.f;
        }
    }
};
 
///----------------------------------------------------------------------------|
/// Старт.
///----------------------------------------------------------------------------:
int main()
{   setlocale(0, "");
 
    sGexagon gex(100.f);
    
    std::cout << "\rЗеленная гекса...       ";
    gex.move(100.f, 130.f);
    gex.draw();
    
    _getch();
    gex.cls();
    
    std::cout << "\rКрасный треугольник...  ";
    gex.side(3);            // Кол-во сторон.
    gex.color(255, 0, 0);   // Цвет.
    gex.move(150.f, 150.f); // Позиция.
    gex.rot = to_rad(15);   // Вращение.
    gex.draw();
    
    _getch();
    gex.cls();
    
    std::cout << "\rСиний квадрат...        ";
    gex.side(4);            // Кол-во сторон.
    gex.color(0, 0, 255);   // Цвет.
    gex.move(150.f, 150.f); // Позиция.
    gex.rot = to_rad(15);   // Вращение.
    gex.draw();
    
    _getch();
    gex.cls();
    
    std::cout << "\rСиний пентагон...       ";
    gex.side(5);            // Кол-во сторон.
    gex.move(150.f, 150.f); // Позиция.
    gex.rot = to_rad(15);   // Вращение.
    gex.draw();             // Процесс отрисовки...
    
    _getch();
    gex.cls();
    
    std::cout << "\rАнимация желтого круга...";
    gex.side(32);
    gex.color(255, 255, 0);
    cAnimation animation(&gex);
    
    return 0;
}


Вернуться к обсуждению:
Вот такая проблема 'clrscr' was not declared in this scope C++
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.09.2019, 05:17
Готовые ответы и решения:

'arr' was not declared in this scope 'sum' was not declared in this scope такие вот ошибки.(
#include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;ctime&gt; using namespace std; int main () { ...

Найти причины и способы исправления ошибки 'clrscr' was not declared in this scope (Dev C++)
Подскажите,почему не хочет компилироваться код? #include&lt;stdio.h&gt; #include&lt;conio.h&gt;...

Проблема с классом компилятор выдает ошибку was not declared in this scope
Взяла простой пример , чтобы разобрать как обращаться с сpp-файла к классу.Как я поняла мне...

Список с дробями: Variable or field 'input' declared void 'pd' was not declared in this scope
почему не нравится 1ая функция? #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; struct rational_fraction...

3
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.09.2019, 05:17

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Вот: source_file.cpp: In function 'int main()': source_file.cpp:10:12: error: 'strlen' was not declared in this scope
#include&lt;iostream&gt; using namespace std; int main() { char a,b; int i,j; cout&lt;&lt;&quot;Напишите...

После каждого перехода из ждущего режима в нормальный на экране вот такая проблема
После каждого перехода из ждущего режима в нормальный на экране вот такая фигня

'...' was not declared in this scope
Доброго времени суток. Столкнулся с одной проблемой при создании класса: имеется описание класса :...

'mean' was not declared in this scope
здравствуйте,наткнулся на статью,где человек строит лодку на автопилоте,но у меня есть проблема...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.