Форум программистов, компьютерный форум CyberForum.ru

Движение змейки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ std::map и перегрузка оператора http://www.cyberforum.ru/cpp-beginners/thread922588.html
решил освоить стандартные контейнеры и очередь за "map" нахожу на http://en.cppreference.com/w/cpp/container/map замороченный код, сокращаю его, чтоб читалось, работает. Но как? Здесь по-видимому перегрузка << на на что? и как она реализована? с помощью шаблона...это меня застопорило...какие то Compare, Allocator #include <iostream> #include <map> // A specialization for Key strings...
C++ Наследование статической переменной есть класс с статистическим полем я от него "произвожу" два потомка. у всех этик классов будет одно общее поле(переменная) или же у каждого своё? http://www.cyberforum.ru/cpp-beginners/thread922574.html
C++ перевести программу из паскаля в с++ (для среды Borland C++). Дан массив размера N. Осуществить циклический сдвиг элементов массива влево на одну
Помогите пожалуйста перевести программу из паскаля в с++(для среды Borland C++) Условие:дан массив размера N. Осуществить циклический сдвиг элементов массива влево на одну позицию (при этом АN перейдет в АN-1, АN-1 - в АN-2, А1 - в АN) прога: const maxSize=100; type Tarr=array of integer; var
перевести программу из паскаля в с++ (для среды Borland C++). Дана матрица размера MxN. Поменять местами столбец с номером N и первый из столбцов C++
Помогите пожалуйста перевести программу из паскаля в с++(для среды Borland C++) Условие:дана матрица размера MxN. Поменять местами столбец с номером N и первый из столбцов, содержащих только отрицательные элементы. Если требуемых столбцов нет, то вывести матрицу без изменений. прога: const maxSize=10; type Tmatrix=array of integer; var
C++ перевести программу из паскаля в с++ (для среды Borland C++). Даны строки S, S1,S2. Заменить в строке S последнее вхождение строки http://www.cyberforum.ru/cpp-beginners/thread922563.html
Помогите пожалуйста перевести программу из паскаля в с++(для среды Borland C++) Условие: даны строки S, S1,S2.Заменить в строке S последнее вхождение строки S1 на строку S2(обработка строк). прога var s,s1,s2:string; i:byte; begin write('Введите строку S='); readln(s);
C++ Ошибка: undefined reference to `WinMain@16' Подскажите пожалуйста, что означает эта ошибка и как от нее озбавиться: Linking... F:\MinGWStudio\MinGW\bin\..\lib\gcc\mingw32\3.4.2\..\..\..\libmingw32.a(main.o):main.c: (.text+0x106): undefined reference to `WinMain@16' collect2: ld returned 1 exit status CLib.exe - 1 error(s), 0 warning(s) P.S. Если нужно приложу код. Заранее спасибо. подробнее

Показать сообщение отдельно
upstrocker
0 / 0 / 0
Регистрация: 31.05.2013
Сообщений: 7
13.07.2013, 16:40     Движение змейки
Никак не получается сделать движение змейки с последующим присоединением элементов к ней при съедании яблока. Помогите пожалуйста!!!

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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <windows.h>
#include <time.h>
#include <iostream>
#include <string>
 
using namespace std;
 
char pole[50][50]; //Размер игрового поля
char apple[1]; // Яблоко
int snakex[50],snakey[50],foodx,foody; // Координаты змейки и еды
int num=2; // Длина змейки
const int height=20, width=50; // Длина и ширина поля
int score=0; // Подсчёт очков начинается с нуля
 
void gotoxy (int column, int line) // Перемещение курсора на заданную позицию
   { 
 
       COORD coord;
       coord.X = column;
       coord.Y = line;
       SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);
   }
 
void menu ()
   {
char start;
gotoxy(20,10);
cout<<"This is games [Snake] \n ";
gotoxy(18,11);
cout<<"Press 'ENTER' to start game!!! \n\n";
getch();
 
   }
 
void initialization() 
   {
for (int i=0; i<=height; ++i)
   {
for(int j=0; j<=width; ++j)
   {
pole[i][j]=(i==0||i==height||j==0||j==width ? '#' : ' '); // Выстраиваем границы
 
 
   }
 
   }
 
// Определяем структуру змейки
   snakex[0]=1;
   snakey[0]=1;
   snakex[1]=2;
   snakey[1]=1;
 
   pole[1][1]='O';
           pole[1][2]='@';
 
// Определяем начальные значения
   foodx=0;
   foody=0;
   score=0;
    }
 
void food () // Генерируем еду
   {
  srand(time(NULL));
  foodx=rand()%49+1;
  foody=rand()%19+1;
 
  gotoxy(foodx,foody);
  apple[0]=1;
  cout<<apple[0];
   }
 
void field () // Выстраиваем поля
   {
int i,j;
 
system("cls");
 
 
 
for (i=0; i<=height; ++i)
  {
  for (j=0; j<=width; ++j)
     
 cout<<pole[i][j];
 
     cout<<endl;
       }
cout<<endl;
 
 
food();
 
   }
 
bool food_field () // Еда на поле
   {
  if ((snakex[num]==foodx) && (snakey[num]==foody)) // Условие увеличения очков и съедания яблока
     {
 foodx=NULL;
 foody=NULL;
 score++;
 return true;
 }
  else 
          return false;
   } 
 
bool dead () // Условия уничтожения змейки
   { 
 
       int i;
 
       //  при ударении об поле
       if (snakex[num-1] == width) 
           return true;
       if (snakex[num-1] == 0) 
           return true;
       if (snakey[num-1] == height) 
           return true;
       if (snakey[num-1] == 0) 
           return true;
 
       // при ударении об себя
       for (i = 0; i < num-3; ++i)
           if (snakex[i] == snakex[num-1] && snakey[i] == snakey[num-1])
              return true;
 
       return false;
   }
 
int main()
{
menu();
initialization(); 
field();
 
getch();
return 0;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru