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

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

Войти
Регистрация
Восстановить пароль
 
Ане4кA
1 / 1 / 0
Регистрация: 05.05.2011
Сообщений: 66
#1

Как работать с графикой? - C++

22.11.2012, 16:44. Просмотров 887. Ответов 7
Метки нет (Все метки)

Здравствуйте, у меня есть программа игры в крестики-нолики. Как сделать графическую часть? Подскажите пожалуйста..
Работаю в 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
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
#include <cstdlib>
#include <iostream>
 
using namespace std;
 
char board[9]={};
 
void clrscr()
{
     for( int i=0;i<40;i++)
     {
          std::cout<<std::endl;
          }
}          
 void clearboard
 {
      for(int i=0;i<9;i++)
      {
              board[i]='-';
              }
 }
 
 bool has_won(char player)
 {
      int wins[][3]={{0,1,2},{3,4,5},{6,7,8},{0,3,6},
                     {1,4,7},{2,5,8},{0,4,8},{2,4,6}};
      for( int i=0;i<8;i++)
      {int count=0;
           for( int j=0;j<3;j++)
           {if(board[wins[i][j]== player) count++;
            }
            if(count==3){return true;}
            }
            return false;
            }
                                       
void print_board(std::string indent)){
  std::cout<<" Game board: \n"<<std::endl;
  std::cout<<indent<< "-"<<board[6]<<"-|-"<<board[7]<<"-|-"<<board[8]<<"-\n";
  std::cout<<indent<< "-"<<board[3]<<"-|-"<<board[4]<<"-|-"<<board[5]<<"-\n";
  std::cout<<indent<< "-"<<board[0]<<"-|-"<<board[1]<<"-|-"<<board[2]<<"-\n";
}  
int get_move(){
  std::cout<<" Move option: \n";
  std::cout<<"-7-|-8-|-9-"<<std::endl;
  std::cout<<"-4-|-5-|-6-"<<std::endl;
  std::cout<<"-1-|-2-|-3-"<<std::endl;
  std::cout<<"\n\n";
  
 print_board("");
  std::cout<<"\n Your move: "; 
  
  int move;
  std::cin>>move;
  while( move>9||move<1||board[move-1]!='-')
 { 
         std::cout<<"Please enter a legal move (1-9): \n"; 
         std::cin>>move;
  }
  return move;
}
 
char play_and_get_winner()
{ int turn=1;
     while(!has_won('X')&&!has_won('0')
{    clrscr();
     int move=get_move();
      std::cout<<"The move you entered is: "<<move<<std::endl;
 if(turn%2==1)
 {
           board[move-1]='X';
           if (has_won('X'))
           { std::cout<<"Congratulations player X. You have won!\n";
           return 'X';
           }
           }
 else
 {
     board[move-1]='0';
       if (has_won('Y'))
           { std::cout<<"Congratulations player Y. You have won!\n";
           return '0';
           }
     }     
     turn++;
     if(turn==10)
     {std::cout<<"\t     It is a draw!\n";}
     }
     }
 
int main(int argc, char *argv[])
 
{    clearboard();
 char winner=play_and_get_winner();
      std::cout<<"\nThe final board layout is \n";
 print_board("\t");
   
    system("PAUSE");
    return EXIT_SUCCESS;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2012, 16:44     Как работать с графикой?
Посмотрите здесь:

Microsoft visual c++ как работать с графикой? - C++
Как тут работать с графикой? что и куда заходить и подключать? Проходим графику, хотелось бы не отставать.

Как работать с графикой DevC++. Нужен пример - C++
Помогите, как поключить граф. драйвера, жду не дождусь когда уже начну работу с графикой. Скиньте нетрудный пример.

Можно ли в Visual Studio 2013 работать с графикой? - C++
Доброй ночи) Можно ли в Вижаке 13 работать с графикой? Ну банальные графики и построение блок-схем с помощью геом фигур. И если можно то...

На чем лучше учиться писать игры, да и вообще работать с графикой- DirectX 9.0 (и c++) или XNA 4.0 (и с#)? - C++
Вот возник такой вопрос: при помощи чего лучше учиться писать игры, да и вообще работать с графикой- DirectX9.0(и c++) или XNA 4.0(и с#)? ...

Как связать код с графикой? - C++
Всем привет! Подкиньте, пожалста, литературы, как связать 2д/3д графику с кодом. Например, чтобы при задании координат на декартовой...

Как рисовать фрактальной графикой в консоли? - C++
Хочу нарисовать портрет ЕОТ в консоли фрактальной графикой (формулами и функциями). Как задавать цвет линии? Как рисовать...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
XRuZzz
Антикодер
657 / 558 / 27
Регистрация: 15.09.2012
Сообщений: 2,509
22.11.2012, 17:02     Как работать с графикой? #2
ну если делать по человечески, то нужно использовать бесплатный графический движок OpenGL, например www.irrlicht.ru . Хотя его критикуют за тормознутость, но для новичков это не заметно. я понимаю что игра 2d но 3d движки адаптированы и под 2d графику.
Ну или просто Qt использовать.

Добавлено через 9 минут
Qt вроде попроще для понимания
Kuzia domovenok
1890 / 1745 / 118
Регистрация: 25.03.2012
Сообщений: 5,924
Записей в блоге: 1
22.11.2012, 17:03     Как работать с графикой? #3
Самое простое
winAPI/OpenGL(DirectX)
Ане4кA
1 / 1 / 0
Регистрация: 05.05.2011
Сообщений: 66
22.11.2012, 17:06  [ТС]     Как работать с графикой? #4
никогда не слышала о Qt надо разбираться..

Добавлено через 2 минуты
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Самое простое
winAPI/OpenGL(DirectX)
а где можно найти описание? функции, как и что писать, задавать?
XRuZzz
Антикодер
657 / 558 / 27
Регистрация: 15.09.2012
Сообщений: 2,509
22.11.2012, 17:13     Как работать с графикой? #5
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Самое простое
winAPI/OpenGL(DirectX)
у меня на линухе итак игр мало, хотите меня ещё без крестиков-ноликов оставить?

имхо лучше Qt, она будет долго разбираться с winAPI/OpenGL
Логика приложения
MrGluck
Модератор
Эксперт CЭксперт С++
7151 / 4317 / 629
Регистрация: 29.11.2010
Сообщений: 11,730
22.11.2012, 17:15     Как работать с графикой? #6
В Dev: поиск библиотек, OpenGL. freeglut качайте, потом при создании проекта указывайте, что будете работать с графикой, конкретно с этой либой. А что да как посмотрите в туториалах для новичков в интернете, оных навалом.

Добавлено через 38 секунд
XRuZzz, кинуть тебе змейку?)
XRuZzz
Антикодер
657 / 558 / 27
Регистрация: 15.09.2012
Сообщений: 2,509
22.11.2012, 17:16     Как работать с графикой? #7
Видеозаписи с нашего Qt-тренинга для начинающих это я кинул ссылки из гугла по запросу крестики нолики Qt
вы смотрите внимательно там как раз урок про крестики нолики есть

Не по теме:

не ну у меня там 3 вида змейки стоит(даже в 3d есть)

MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.11.2012, 17:24     Как работать с графикой?
Еще ссылки по теме:

как работать с временем? - C++
нпример я хочу чтобы через 5 секунд выводило сообщение, как реализовать?

Как работать с окнами? - C++
Гуглил, гуглил.. так ничо путёвого и не нашел.. у меня если чо Dev-C++ Вот код из примеров Dev-C++ помогите разобраться: #include...

Как работать с файлами? - C++
Собственно являюсь студентом, вчера была лекция по программированию, темой которой были сортировка и файлы, но так как лектор выделил на...

Как работать с шаблонами - C++
Простенькая програмка, но не компилируеться. Не могу я понять как работать с шаблонами, сколько уже перечитал, все-равно не въеду что не...

Как работать с потоками? - C++
Как создать поток? Как его стартануть? В какой он библиотеке? И вообще, как он называется? Когда гуглю, находится много информации про...

Как работать с Bluetooth - C++
Здравствуйте, необходимо сделать проект, связанный с bluetooth. Я начинающий программист, поэтому максимум что я программировал это...


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

Или воспользуйтесь поиском по форуму:
Ане4кA
1 / 1 / 0
Регистрация: 05.05.2011
Сообщений: 66
22.11.2012, 17:24  [ТС]     Как работать с графикой? #8
Цитата Сообщение от XRuZzz Посмотреть сообщение
Видеозаписи с нашего Qt-тренинга для начинающих это я кинул ссылки из гугла по запросу крестики нолики Qt
вы смотрите внимательно там как раз урок про крестики нолики есть

Не по теме:

не ну у меня там 3 вида змейки стоит(даже в 3d есть)

Спасибо за ссылку)
Yandex
Объявления
22.11.2012, 17:24     Как работать с графикой?
Ответ Создать тему
Опции темы

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