Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 07.01.2019
Сообщений: 25
1

Траблы с кодом

04.09.2019, 23:38. Показов 671. Ответов 3
Метки нет (Все метки)

Ребята, задача сделать правильный шестиугольник, я написал и выдало ошибку [Error] 'clrscr' was not declared in this scope.
Помогите сделать шестиугольник или скиньте где почитать на счёт ООП на Dev-C++
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
#include <graphics.h>
#include <iostream>
#include <math.h>
 
void klun(int x0, int y0, int m, int clvis, int clnvis)
{
    int m1=m/2;
    int m2=m1/2;
    int m3=m2/2;
    int m4=m3/2;
    int m5=m4/2;
    int m6=m5/2;
    int m7=m6/2;
}
     
int main()
{
    float step=M_PI/180;
    initwindow(900,900);
    int dov=200; //m
    int iks=400; //x0
    int igr=100; //y0
    int col=5; //clvis
    int kol=9; //clnvis
    int R=40;
    int xc=450;
    int yc=350;
    int i, x, y, x1, y1, x2, y2, x3, y3, x4, y4, x5, y5;
    for(i=1;i<360;i++)
    {
         float t=i*step;
         ellipse(xc,yc,0,360,4*R,4*R);
         x=trunc(4*R*(cos(t)));
         y=trunc(4*R*(sin(t)));
        x1=trunc(4*R*(cos(M_PI/3+t)));
        y1=trunc(4*R*(sin(M_PI/3+t)));
        x2=trunc(4*R*(cos(2*M_PI/3+t)));
        y2=trunc(4*R*(sin(2*M_PI/3+t)));
        x3=trunc(4*R*(cos(M_PI+t)));
        y3=trunc(4*R*(sin(M_PI+t)));
        x4=trunc(4*R*(cos(4*M_PI/3+t)));
        y4=trunc(4*R*(sin(4*M_PI/3+t)));
        x5=trunc(4*R*(cos(5*M_PI/3+t)));
        moveto(xc+x,yc-y);
        lineto(xc+x1,yc-y1);       
    }
    getch();
    closegraph();
    clrscr;
    return 0;
}
0

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

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.09.2019, 23:38
Ответы с готовыми решениями:

траблы с сортировкой
вот собственно задание первые два я сделал, а третье чет с косяком =\ в одномерном массиве,...

Траблы с массивом
Помогите решить: Дан массив вещественных чисел X=(x1,x2,..,xn). Записать элементы заданного...

траблы с fstream
Всем привет! Начинаю работать над дз по проге и никак не могу разобраться с одной фишкой с fstream....

Небольшие траблы
Решите, пожалуйста, люди добрые, два небольших тестика. ☺

3
бах-бах и в продакшен!
2979 / 1597 / 563
Регистрация: 23.09.2014
Сообщений: 4,930
Записей в блоге: 4
05.09.2019, 00:26 2
LambadaS,
ваш код(c микроскопическими правками):
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
#include <graphics.h>
#include <iostream>
#include <math.h>
 
const float M_PI = 3.14f;
 
void klun(int x0, int y0, int m, int clvis, int clnvis)
{
    int m1=m/2;
    int m2=m1/2;
    int m3=m2/2;
    int m4=m3/2;
    int m5=m4/2;
    int m6=m5/2;
    int m7=m6/2;
}
     
int main()
{
    float step=M_PI/180;
    initwindow(500,500);
    int dov=200; //m
    int iks=400; //x0
    int igr=100; //y0
    int col=5; //clvis
    int kol=9; //clnvis
    int R=40;
    int xc=250;
    int yc=250;
    int i, x, y, x1, y1, x2, y2, x3, y3, x4, y4, x5, y5;
    for(i=1;i<360;i++)
    {
         float t=i*step;
         ellipse(xc,yc,0,360,4*R,4*R);
         x=trunc(4*R*(cos(t)));
         y=trunc(4*R*(sin(t)));
        x1=trunc(4*R*(cos(M_PI/3+t)));
        y1=trunc(4*R*(sin(M_PI/3+t)));
        x2=trunc(4*R*(cos(2*M_PI/3+t)));
        y2=trunc(4*R*(sin(2*M_PI/3+t)));
        x3=trunc(4*R*(cos(M_PI+t)));
        y3=trunc(4*R*(sin(M_PI+t)));
        x4=trunc(4*R*(cos(4*M_PI/3+t)));
        y4=trunc(4*R*(sin(4*M_PI/3+t)));
        x5=trunc(4*R*(cos(5*M_PI/3+t)));
        moveto(xc+x,yc-y);
        lineto(xc+x1,yc-y1);       
    }
    getch();
    closegraph();
    //clrscr;
    return 0;
}
компилится.
результат:
Траблы с кодом


настройки DevC++ я взял отсюда.
0
бах-бах и в продакшен!
2979 / 1597 / 563
Регистрация: 23.09.2014
Сообщений: 4,930
Записей в блоге: 4
05.09.2019, 02:06 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
#include <windows.h>
#include <iostream>
#include <math.h>
 
const float DELT_PI = 6.28f/6;
 
///----------------------------------------------------------------------------|
/// Класс для рисования гексы.
///----------------------------------------------------------------------------:
struct sGexagon
{   sGexagon(float r) : radius(r),
                        deltax(0.f),
                        deltay(0.f)
    {   HWND hWnd = GetConsoleWindow();
             hDC  = GetDC(hWnd);
        HPEN cP   = CreatePen(PS_SOLID, 2, RGB(0,255,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)
    {   HWND hWnd = GetConsoleWindow();
             hDC  = GetDC(hWnd);
        /// TODO: закрыть предыдущий пен?!
        HPEN cP   = CreatePen(PS_SOLID, 2, RGB(r,g,b));
        SelectObject(hDC,cP);
    }
    
private:
    float radius;
    float deltax, deltay;
    HDC   hDC;
    sPlot get(int a)
    {   sPlot p;
        p.x = radius * sin(DELT_PI*a) + deltax;
        p.y = radius * cos(DELT_PI*a) + deltay;
        return p;
    }
};
 
///----------------------------------------------------------------------------|
/// Старт.
///----------------------------------------------------------------------------:
int main()
{   sGexagon gex(100.f);
 
    gex.move(100.f, 100.f);
    gex.draw();
    
    gex.color(255,0,0);
    gex.move(150.f, 150.f);
    gex.draw();
    
    std::cin.get();
    return 0;
}
Никаких дополнительных настоек с DevC++ делать не надо.
Траблы с кодом
0
6737 / 4537 / 1838
Регистрация: 07.05.2019
Сообщений: 13,725
Записей в блоге: 1
05.09.2019, 08:45 4
Цитата Сообщение от LambadaS Посмотреть сообщение
Помогите сделать шестиугольник или скиньте где почитать на счёт ООП
Прям крик души. Надо запомнить.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.09.2019, 08:45

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

C++ траблы с вводом
Как бы так описать проблемку... Как можно сделать ввод с клавиатуры от 0 до 5 цифр? Важно что...

Траблы с кодировками
Задание звучит так: из заданной строчки вывести слова, в которых нет повторных букв struct...

Траблы с cin.get
Народ, почему в условии в cin.get (!'\n') выдаёт ошибку while (!(cin &gt;&gt; v)||...

Траблы с зацикливанием в while
народ, помогите на цикле while идет зацикливание #include &quot;stdafx.h&quot; #include &lt;iostream&gt;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

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