powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Ошибки
7 сообщений из 7, страница 1 из 1
Ошибки
    #38983893
Yorik333000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Создаю игру змейка на C++. Написал весь код, но компьютер дает ошибки. Почему он их дает? Ссылка на архив, в котором находится проект игры: https://yadi.sk/d/qOeyB3n4hFpiB
...
Рейтинг: 0 / 0
Ошибки
    #38983899
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yorik333000Почему он их дает?
Потому что код неправильный, разве это не очевидно?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Ошибки
    #38983904
Yorik333000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov,

А как можно исправить ошибки?
...
Рейтинг: 0 / 0
Ошибки
    #38983912
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yorik333000А как можно исправить ошибки?
Сначала надо их внимательно прочитать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Ошибки
    #38983917
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Yorik333000,

Давай ошибки, по одной.
...
Рейтинг: 0 / 0
Ошибки
    #38984018
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я скопипащу в форум. Так удобнее обсуждать. Надеюсь автор не против. Всё равно ведь опубликовал...


Код: 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.
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.
#include <time.h>
#include <stdlib.h>
#include <glut.h>

int n = 30, m = 20;
int scale = 25;

int w = scale * n;
int h = scale * m;

int dir, num = 4;

bool controls_arrows = true;

struct
{
	int x, y;
}
s[100];

class Apple
{
public:
	int x, y;

	void New()
	{
		x = rand() % n;
		y = rand() % m;
	}

	void Draw_apple()
	{
		glColor3f(0.0, 0.0, 1.0);
		glRectf(x * scale, y * scale, (x + 1) * scale, (y + 1) * scale);
	}
}
m[10];

void Draw_snake()
{
	glColor3f(0.0, 0.0, 1.0);

	for (int i = 0; i < num; i++)
		glRectf(s[i].x * scale, s[i].y * scale, (s[i].x + 0.9) * scale, (s[i].y + 0.9) * scale);
}

void Tick()
{
	for (int i = num; i > 0; --i)
	{
		s[i].x = s[i - 1].x;
		s[i].y = s[i - 1].y;
	}

	if (dir == 0) s[0].y += 1;
	if (dir == 1) s[0].x -= 1;
	if (dir == 2) s[0].x += 1;
	if (dir == 3) s[0].y -= 1;

	for (int i = 0; i<10; i++)
	if ((s[0].x == m[i].x) && (s[0].y == m[i].y))
	{
		num++; m[i].New();
	}

	if (s[0].x > n) dir = 1;
	if (s[0].x < 0) dir = 2;
	if (s[0].y > m) dir = 3;
	if (s[0].y < 0) dir = 0;

	for (int i = 0; i < num; i++)
	if (s[0].x == s[i].x && s[0].y == s[i].y) num = i;
}

void Draw_field()
{
	glColor3f(0.0, 7.0, 0.0);
	glBegin(GL_LINES);
	for (int i = 0; i < w; i += scale)
	{
		glVertex2f(i, 0);
		glVertex2f(i, h);
	}

	for (int j = 0; j < w; j += scale)
	{
		glVertex2f(0, j);
		glVertex2f(w, j);
	}

	glEnd();
}

void Display()
{
	glClear(GL_COLOR_BUFFER_BIT);

	Draw_field();

	Draw_snake();

	for (int i = 0; i < 10; i++)
		m[i].Draw_apple();

	glFlush();
	glutSwapBuffers();
}

void Keyboard(int key, int a, int b)
{
	switch (key)
	{
		if (controls_arrows == true) case 101: dir = 0; break;
		if (controls_arrows == true) case 102: dir = 2; break;
		if (controls_arrows == true) case 100: dir = 1; break;
		if (controls_arrows == true) case 103: dir = 3; break;
	}
}

void Timer(int i = 0)
{
	Display();

	Tick();

	glutTimerFunc(50, Timer, 0);
}

int main(int argc, char **argv)
{
	srand(time(0));

	for (int i = 0; i < 10; i++)
		m[i].New();

	s[i].x = 10;
	s[i].y = 10;

	glutInit(&argc, argv);
	glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
	glutInitWindowSize(w, h);
	glutCreateWindow("Snake");
	glClearColor(1.0, 1.0, 0.6, 1.0);
	glMatrixMode(GL_PROJECTION);
	glLoadIdentity();
	gluOrtho2D(0, w, 0, h);
	glutDisplayFunc(Display);
	glutSpecialFunc(Keyboard);
	glutTimerFunc(50, Timer, 0);
	glutMainLoop();
}

...
Рейтинг: 0 / 0
Ошибки
    #38984046
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну начнем пожалуй с m, что это за фигня?
Код: 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.
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.
#include <time.h>
#include <stdlib.h>
#include <glut.h>

int n = 30, m = 20;
int scale = 25;

int w = scale * n;
int h = scale * m;

int dir, num = 4;

bool controls_arrows = true;

struct
{
	int x, y;
}
s[100];

class Apple
{
public:
	int x, y;

	void New()
	{
		x = rand() % n;
		y = rand() % m;
	}

	void Draw_apple()
	{
		glColor3f(0.0, 0.0, 1.0);
		glRectf(x * scale, y * scale, (x + 1) * scale, (y + 1) * scale);
	}
}
m[10];

void Draw_snake()
{
	glColor3f(0.0, 0.0, 1.0);

	for (int i = 0; i < num; i++)
		glRectf(s[i].x * scale, s[i].y * scale, (s[i].x + 0.9) * scale, (s[i].y + 0.9) * scale);
}

void Tick()
{
	for (int i = num; i > 0; --i)
	{
		s[i].x = s[i - 1].x;
		s[i].y = s[i - 1].y;
	}

	if (dir == 0) s[0].y += 1;
	if (dir == 1) s[0].x -= 1;
	if (dir == 2) s[0].x += 1;
	if (dir == 3) s[0].y -= 1;

	for (int i = 0; i<10; i++)
	if ((s[0].x == m[i].x) && (s[0].y == m[i].y))
	{
		num++; m[i].New();
	}

	if (s[0].x > n) dir = 1;
	if (s[0].x < 0) dir = 2;
	if (s[0].y > m) dir = 3;
	if (s[0].y < 0) dir = 0;

	for (int i = 0; i < num; i++)
	if (s[0].x == s[i].x && s[0].y == s[i].y) num = i;
}

void Draw_field()
{
	glColor3f(0.0, 7.0, 0.0);
	glBegin(GL_LINES);
	for (int i = 0; i < w; i += scale)
	{
		glVertex2f(i, 0);
		glVertex2f(i, h);
	}

	for (int j = 0; j < w; j += scale)
	{
		glVertex2f(0, j);
		glVertex2f(w, j);
	}

	glEnd();
}

void Display()
{
	glClear(GL_COLOR_BUFFER_BIT);

	Draw_field();

	Draw_snake();

	for (int i = 0; i < 10; i++)
		m[i].Draw_apple();

	glFlush();
	glutSwapBuffers();
}

void Keyboard(int key, int a, int b)
{
	switch (key)
	{
		if (controls_arrows == true) case 101: dir = 0; break;
		if (controls_arrows == true) case 102: dir = 2; break;
		if (controls_arrows == true) case 100: dir = 1; break;
		if (controls_arrows == true) case 103: dir = 3; break;
	}
}

void Timer(int i = 0)
{
	Display();

	Tick();

	glutTimerFunc(50, Timer, 0);
}

int main(int argc, char **argv)
{
	srand(time(0));

 	for (int i = 0; i < 10; i++)
 		m[i].New();

	s[i].x = 10;
	s[i].y = 10;

	glutInit(&argc, argv);
	glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
	glutInitWindowSize(w, h);
	glutCreateWindow("Snake");
	glClearColor(1.0, 1.0, 0.6, 1.0);
	glMatrixMode(GL_PROJECTION);
	glLoadIdentity();
	gluOrtho2D(0, w, 0, h);
	glutDisplayFunc(Display);
	glutSpecialFunc(Keyboard);
	glutTimerFunc(50, Timer, 0);
	glutMainLoop();
}
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Ошибки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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