Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.94/16: Рейтинг темы: голосов - 16, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 16

Код, написанный на Borland C++ не работает в Dev C++

14.01.2013, 18:17. Показов 3487. Ответов 16
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
программа на Си++
пользуюсь DEV-CPP

Не могу разобраться почему не работает программа.
Если у кого есть время помогите пожалуйста.

задание: нарисовать змею ползущую в горку .

вот код


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
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
#include <conio.h>
#include <graphics.h>
#include <process.h>
#include <stdio.h>
#include <dos.h>
#include <stdlib.h>
 
void solar(double k)
{
    setcolor(YELLOW);
    setfillstyle(1,YELLOW);
    fillellipse(90,50,30,30);
    if(k<1) 
    {
        line(130,50, 155,50);
        line(50,50, 25,50);
        line(90,90, 90,115);
        line(120,80, 135,95);
        line(60,20, 45,5);
        line(60,80, 45,95);
        line(120,20, 135,5);
        line(90,10, 90,2);
    }
    else
    {
        line(130,50, 165,50);
        line(50,50, 15,50);
        line(90,90, 90,125);
        line(120,80, 138,98);
        line(60,20, 42,2);
        line(60,80, 42,98);
        line(120,20, 138,2);
        line(90,10, 90,0);
    }
}
 
void nebo()
{
    setcolor(CYAN);
    setfillstyle(1,CYAN);
    bar(0,0,540,250);
}
 
void zemlya()
{
    setcolor(GREEN);
    setfillstyle(1,GREEN);
    bar(0,200,540,250);
    line(250,200, 539,140);
    line(539,140, 539,200);
    line(539,200, 250,200);
    floodfill(500,180,GREEN);
}
 
void flower(int x, int y, double r)
{
    setcolor(BROWN);
    setfillstyle(1,BROWN);
    line(x,y, x,y+20);
    fillellipse(x+5,y+10,5,3);
    fillellipse(x-5,y+12,5,2);
    setcolor(YELLOW);
    setfillstyle(1,YELLOW);
    fillellipse(x,y, r,r);
}
 
void oblako1(int x, int y)
{
    setcolor(WHITE);
    setfillstyle(1,WHITE);
    fillellipse(x,y, 40,25);
    fillellipse(x+30,y+20,30,15);
}
 
void oblako2(int x, int y)
{
    setcolor(WHITE);
    setfillstyle(1,WHITE);
    fillellipse(x,y, 40,25);
    fillellipse(x+20,y-20,30,15);
}
 
void water(int x, int y, int  r)
{
    setcolor(8);
    setfillstyle(1,8);
    fillellipse(x,y, r, r-30);
    setcolor(BLUE);
    setfillstyle(1,BLUE);
    fillellipse(x,y, r-2, r-32);
}
 
 
void zmeya(int x,int y)
{
    setcolor(8);
    setfillstyle(1,8);
    bar(x,y, x+60,y-10);
}
 
int main()
{
    char ch;
    printf("\n ‚ўҐ¤ЁвҐ бЄ®а®бвм §¬Ґ©ЄЁ(1/2)\n>");
    ch = getch();
    if(ch==49)  ch = 3;
    else        ch = 6;
    double x, y, i, j, k, h;
 
    int gdriver = VGA, gmode = VGAMED, errorcode;
    initgraph(&gdriver, &gmode, "C:\Borland\BORLANDC\BGI" );
 
    errorcode = graphresult();
    if (errorcode != grOk)
    {
        printf("Graphics error: %s\n", grapherrormsg(errorcode));
        printf("Press any key to halt:");
        getch();
        exit(1);
    }
 
    x = 5;
    y = 203;    //начальные координаты змейки
 
    setviewport(50, 50, getmaxx()-50, getmaxy()-50, 1);
 
    i=0;
    j=0;
    k=0;
 
    while(!kbhit()) // пока не нажата кнопка любая
    {
        if(i == 1)  i=0;    //смена активной страницы
        else        i=1;
        setactivepage(i);
        clearviewport();
        nebo();
        zemlya();
        solar(k);
        if(k<=1)
             k = k + 0.3;
        else k = 0;
 
        oblako1(100+j,50);oblako2(250+j+0.5,60);
        oblako2(10+j+0.7,30) ;oblako1(380+j+0.3,30);
        oblako1(520+j+0.2,20);
 
        j = j+0.5;
 
        if(x<190)
        {   zmeya(x,y);
            x += ch;
 
            goto f1;
        }
 
        if(x>=190 && x<250) //змейка рисуется на прямой
        {
            //x = 250;
 
            setcolor(8);
            setfillstyle(1,8);
 
            line(x,y, x+59,y-3);
            line(x+59,y-3, x+59,y-3-10);
            line(x+59,y-3-10, x,y-10);
            line(x,y-10, x,y);
            floodfill(x+30,y-5,8);
            //if(x>)
 
            x += ch-1;
            y -= 0.08;
 
            goto f1;
            //delay(1500);
        }
 
        if(x>=250 && x<539) //змейка рисуется на подъеме
        {
            setcolor(8);
            setfillstyle(1,8);
 
            line(x,y, x+59,y-12);
            line(x+59,y-12, x+59,y-12-10);
            line(x+59,y-12-10, x,y-10);
            line(x,y-10, x,y);
            floodfill(x+5,y-5,8);
 
            x += 1;
            y -= 0.2;
        }
if(x>439)goto exit;        //останавливаем змейку
 
f1:     flower( 40,205,5+h);flower(100,215,5+h);
        flower( 80,205,5+h);flower( 80,230,5+h);
        flower(450,230,5+h);flower(500,220,5+h);
        flower(300,180,5+h);flower(260,175,5+h);
        flower(350,190,5+h);
        if(h<1)
             h = h + 0.3;
        else h = 0;
 
        water(420,195,50);
        
        setvisualpage(i);
    }
exit:
getch();
    closegraph();
    return 0;
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.01.2013, 18:17
Ответы с готовыми решениями:

Написал код в Full Debug, потом переделал в Release - и написанный код не работает
Кто сталкивался с проблемой, написал код в Full Debug потом переделал в Release и написанный код не работает (((

Код, написанный на ABC, не работает в Turbo
Ребят скажите в чем может быть проблема. Писал долго и упорно калькулятор на pascal ABC. В нем все функции работают корректно. Если же...

Не работает написанный JavaScript код в Google Chrome
JavaScript код не работает в Google Chrome, а во всех остальных браузерах все нормально работает. Как сделать так, чтобы работало во всех...

16
187 / 180 / 25
Регистрация: 27.01.2012
Сообщений: 1,335
14.01.2013, 18:27
Так это ж устаревшие функции.. Используйте WinAPI, если на C++..
p.s Теги оформления смените. Да и программка не до конца

Добавлено через 6 минут
Упустил то, что код для dev-cpp.. Тогда не знаю. Может у вас там и правда используются такие функции для рисования..
0
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 16
14.01.2013, 18:48  [ТС]
Дело в том что программа написана на Borlande и работала
а теперь не могу открыть ее в Dev-Cpp
не могу найти проблему

Добавлено через 18 минут
выдает ошибки

Кликните здесь для просмотра всего текста

Code
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
C:\Users\сергей\Downloads\5 (1).cpp: In function `void flower(int, int, double)':
C:\Users\сергей\Downloads\5 (1).cpp:64: warning: passing `double' for converting 3 of `void fillellipse(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:64: warning: passing `double' for converting 4 of `void fillellipse(int, int, int, int)'
 
C:\Users\сергей\Downloads\5 (1).cpp:111:30: warning: unknown escape sequence '\B'
C:\Users\сергей\Downloads\5 (1).cpp:111:30: warning: unknown escape sequence '\B'
C:\Users\сергей\Downloads\5 (1).cpp:111:30: warning: unknown escape sequence '\B'
C:\Users\сергей\Downloads\5 (1).cpp: In function `int main()':
C:\Users\сергей\Downloads\5 (1).cpp:135: warning: passing `double' for converting 1 of `void setactivepage(int)'
 
C:\Users\сергей\Downloads\5 (1).cpp:144: warning: passing `double' for converting 1 of `void oblako1(int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:144: warning: passing `double' for converting 1 of `void oblako2(int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:145: warning: passing `double' for converting 1 of `void oblako2(int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:145: warning: passing `double' for converting 1 of `void oblako1(int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:146: warning: passing `double' for converting 1 of `void oblako1(int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:151: warning: passing `double' for converting 1 of `void zmeya(int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:151: warning: passing `double' for converting 2 of `void zmeya(int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:164: warning: passing `double' for converting 1 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:164: warning: passing `double' for converting 2 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:164: warning: passing `double' for converting 3 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:164: warning: passing `double' for converting 4 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:165: warning: passing `double' for converting 1 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:165: warning: passing `double' for converting 2 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:165: warning: passing `double' for converting 3 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:165: warning: passing `double' for converting 4 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:166: warning: passing `double' for converting 1 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:166: warning: passing `double' for converting 2 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:166: warning: passing `double' for converting 3 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:166: warning: passing `double' for converting 4 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:167: warning: passing `double' for converting 1 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:167: warning: passing `double' for converting 2 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:167: warning: passing `double' for converting 3 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:167: warning: passing `double' for converting 4 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:168: warning: passing `double' for converting 1 of `void floodfill(int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:168: warning: passing `double' for converting 2 of `void floodfill(int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:183: warning: passing `double' for converting 1 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:183: warning: passing `double' for converting 2 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:183: warning: passing `double' for converting 3 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:183: warning: passing `double' for converting 4 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:184: warning: passing `double' for converting 1 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:184: warning: passing `double' for converting 2 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:184: warning: passing `double' for converting 3 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:184: warning: passing `double' for converting 4 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:185: warning: passing `double' for converting 1 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:185: warning: passing `double' for converting 2 of `void line(int, int, int, int)'
 
C:\Users\сергей\Downloads\5 (1).cpp:185: warning: passing `double' for converting 3 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:185: warning: passing `double' for converting 4 of `void line(int, int, int, int)'
 
C:\Users\сергей\Downloads\5 (1).cpp:186: warning: passing `double' for converting 1 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:186: warning: passing `double' for converting 2 of `void line(int, int, int, int)'
 
C:\Users\сергей\Downloads\5 (1).cpp:186: warning: passing `double' for converting 3 of `void line(int, int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:186: warning: passing `double' for converting 4 of `void line(int, int, int, int)'
 
C:\Users\сергей\Downloads\5 (1).cpp:187: warning: passing `double' for converting 1 of `void floodfill(int, int, int)'
C:\Users\сергей\Downloads\5 (1).cpp:187: warning: passing `double' for converting 2 of `void floodfill(int, int, int)'
 
C:\Users\сергей\Downloads\5 (1).cpp:205: warning: passing `double' for converting 1 of `void setvisualpage(int)'
0
187 / 180 / 25
Регистрация: 27.01.2012
Сообщений: 1,335
14.01.2013, 19:00
Ну это не ошибки, а предупреждения. Хотя их, насколько я могу судить, можно игнорировать.
0
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 16
14.01.2013, 19:18  [ТС]
игнорировать то можно
вот только прога не компилится
0
 Аватар для BumerangSP
4311 / 1423 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
14.01.2013, 19:26
Я б сказал, что она не компилируется только потому, что там используется библиотека graphics. Такая есть в borland c++ 3.1 (или что-то вроде). Там довольно старый компилятор. C/C++ вообще как бы не предназначались для рисования в консоли.
0
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 16
14.01.2013, 19:36  [ТС]
да я понимаю но по лабораторной я должен написать именно на С++
0
погромист
 Аватар для coloc
415 / 251 / 30
Регистрация: 27.08.2012
Сообщений: 550
14.01.2013, 20:46
Вот, эмулятор BGI графики под винду MinGW + Graphics.h It's work)
1
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 16
14.01.2013, 21:35  [ТС]
пробовал не помогло
0
Неэпический
 Аватар для Croessmah
18144 / 10728 / 2066
Регистрация: 27.09.2012
Сообщений: 27,026
Записей в блоге: 1
14.01.2013, 21:38
Цитата Сообщение от grey6 Посмотреть сообщение
я должен написать именно на С++
тогда зачем Си'шные хедеры и функции?

Цитата Сообщение от grey6 Посмотреть сообщение
пробовал не помогло
делайте на API и всё!
0
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 16
14.01.2013, 22:16  [ТС]
вопрос могу ли я исправить эту программу что бы она заработала?

Добавлено через 1 минуту
можно ли исправить эту программу что бы она заработала и как это сделать
0
погромист
 Аватар для coloc
415 / 251 / 30
Регистрация: 27.08.2012
Сообщений: 550
14.01.2013, 22:52
Все нормально компилируется, у меня тоже DevC++, просто сделайте операции приведения типов. (функции graphic.h принимают значение int а не double)
0
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 16
14.01.2013, 23:43  [ТС]
простите но я не понимаю можно как для тупых объяснить

Добавлено через 1 минуту
везде double поменять на int?
0
погромист
 Аватар для coloc
415 / 251 / 30
Регистрация: 27.08.2012
Сообщений: 550
14.01.2013, 23:45
можно просто поменять а можно например
C++
1
fillellipse((int)x,(int)y, (int)r,(int)r); //аргументы функции fillellipse int
0
0 / 0 / 0
Регистрация: 17.12.2011
Сообщений: 16
14.01.2013, 23:54  [ТС]
я так тоже делал и у меня не компилиться
0
4 / 4 / 3
Регистрация: 12.01.2013
Сообщений: 65
15.01.2013, 00:24
1.Не понимаю почему вам лабы надо выполнить в Dev C++. Ведь Borland C++ это тоже будет язык С++ просто разная среда разработки
2.Как я знаю вроде))) программный код немного меняется в зависимости от того в какой среде программировать
0
Эксперт С++
 Аватар для Avazart
8484 / 6151 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
15.01.2013, 00:28
Все проблемы от graphics.h ...
( она то и на современном Builder тоже не пойдет )

Добавлено через 1 минуту
Цитата Сообщение от НиколайСД Посмотреть сообщение
2.Как я знаю вроде))) программный код меняется в зависимости от того в какой среде программировать
Теоретически нет, т.е. можно использовать переносимые конструкции... но это теоретически...
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.01.2013, 00:28
Помогаю со студенческими работами здесь

Не работает код программы, написанный в другой версии Паскаля
Подскажите пожалуйста, почему код не работает в турбо паскале? program graph_paskal; Uses Graph;//Подключение модуля библиотеки...

Код написан в Dev C. Не работает в Visual. Как нужно переделать код?
Здравствуйте. Столкнулась с такой проблемой: код был написан в Dev C, но в Visual он выдаёт ошибку. ...

Код для консоли, написанный в RAD XE7, не работает на VS2013
Программа создает односвязный список структур. Данные в структуру считываются из текстового файла. Программу начал писать в RAD, работает...

Почему код, написанный на С++, в разы быстрее работает с большим объемом памяти, чем с маленьким?
Привет! Понадобилось мне сравнить скорость работы идентичных алгоритмов на Fortran и C++. Алгоритм - перемножение матриц. Решил...

В Dev-C++ код не работает
Здравствуйте! Помогите пожалуйста c кодом, в консоле всё идёт, но работу надо сдавать в Dev-c++, но в Dev-C++ код не работает. ...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru