Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Advin
0 / 0 / 0
Регистрация: 12.12.2013
Сообщений: 13
#1

Написати гру на С++. В консолі - C++

13.12.2013, 18:13. Просмотров 631. Ответов 3
Метки нет (Все метки)

Гра «Мінер».
Гра «Морський бій».
Допоможіть..Дуже нада!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.12.2013, 18:13
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Написати гру на С++. В консолі (C++):

Написати програму, яка виконує наступні дії по перевизначенню хендлів - C++
Написати програму, яка виконує наступні дії по перевизначенню хендлів а) Відкрити файл в режимі додавання ...

Написати программу, которая позволяет вычислить по указанной сумме и курса евро, доллара и российского рубля сумму в гривнах. - C++
Написати программу, которая позволяет вычислить по указанной сумме и курса евро, доллара и российского рубля сумму в гривнах. Примечание! С...

Написати програму, яка після введеного з клавіатури числа дописує слово "гривня" - C++
Написати програму, яка після введеного з клавіатури числа (у діапазоні від 1 до 999), що позначає грошову одиницю, дописує слово...

Проанализировать человека по возрасту и отнести к одной из гру - MS Excel
Проанализируйте человека по возрасту и отнесите к одной из групп: дошкольник, ученик, студент, работник, пенсионер. При этом учитывайте,...

Допоможіть написати - Pascal
Дуже потрібно вашу допомогу!!!!!!!! Завдання: Напишісь схему алгоритму і програму.Дано масив А(4,3). ЗНАЙТИ МІНІМАЛЬНИЙ ЕЛЕМЕНТ ВСІХ...

Написати сценарій - JavaScript
Здравствуте помогите Написати сценарій, в якому користувач вводить ціле число, а сценарій виводить текст HTML, який повідомляє,...

3
Advin
0 / 0 / 0
Регистрация: 12.12.2013
Сообщений: 13
13.12.2013, 19:43  [ТС] #2
або змейку)
0
taras atavin
3570 / 1753 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
13.12.2013, 19:45 #3
Advin, пиши по-русски.
0
cpp_job
4 / 4 / 1
Регистрация: 25.11.2013
Сообщений: 108
13.12.2013, 20:11 #4
Цитата Сообщение от Advin Посмотреть сообщение
або змейку)
Хотел змейку - получи! Писал я на ОупенЖЛ

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
#include <time.h>
#include <stdlib.h>
#include  <GL/glut.h>
 
int N=30,M=20;
int Scale=25;
 
int w = Scale*N;
int h = Scale*M;
 
int dir,num=4, i;
 
struct 
{ int x;
  int y;}  s[100];
 
class Fructs
{ 
public:
    int x,y;
 
    void New()
    {  x=rand() % N;
        y=rand() % M;   }
    
    void DrawApple()
   {   glColor3f(0.0,1.0,0.0);
       glRectf(x*Scale,y*Scale,(x+1)*Scale,(y+1)*Scale); }
 
} m[10];
 
 void DrawSnake()
 {  
  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=1;i<num;i++)
  if (s[0].x==s[i].x && s[0].y==s[i].y)  num=i;
 }
 
 
 
void DrawField()
  {
   glColor3f(0.0,0.7,0.0);
   glBegin(GL_LINES);
    for (int i=0; i<w; i+=Scale) 
      {glVertex2f(i,0); glVertex2f(i,h);}
    for (int j=0; j<h; j+=Scale)  
      {glVertex2f(0,j); glVertex2f(w,j);}
    glEnd();
}
 
 
void display() {
 
     glClear(GL_COLOR_BUFFER_BIT);
 
    DrawField();
 
    DrawSnake(); 
 
   for (int i=0;i<10;i++)
     m[i].DrawApple();
 
   glFlush();
   glutSwapBuffers();
}
 
void KeyboardEvent(int key, int a, int b)
{   
    switch(key)
    {
        case 101 :  dir=0; break;
         case 102:   dir=2; break;
        case 100 :  dir=1; break;
        case 103 :  dir=3; break;
     }
}
 
void timer(int = 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 ("Test"); 
glClearColor(1.0,1.0,0.6,1.0);  //цвет фона
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0,w,0,h);
 
glutDisplayFunc (display);
glutSpecialFunc(KeyboardEvent);
glutTimerFunc(50,timer,0);
 
glutMainLoop();
}
0
13.12.2013, 20:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.12.2013, 20:11
Привет! Вот еще темы с ответами:

допоможіть написати програму - Turbo Pascal
.В заданiй матрицi K(3,6) пiдрахувати кiлькiсть вiд'ємних елементiв. Вивести вихiдну матрицю та кiлькiсть вiд'ємних елементiв.

Написати функцію, яка визначає: - C (СИ)
Написати функцію, яка визначає: чи є задана пара однакових букв.

Допоможіть написати програму Паскаль - Pascal
Допоможіть будь-ласка Написати мовою Паскаль програму табулювання складної математичної функції z (вигляд функції задати довільний), що...

Допоможіть написати програму. Дуже треба. - Delphi
Задано три матриці А, В і С. Розв'язати рівняння px2 + dx + r = 0, де p – мінімальний елемент матриці А, d – мінімальний елемент матриці...


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

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

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