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

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

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

Как создать приложение? - C++

21.11.2012, 20:12. Просмотров 384. Ответов 2
Метки нет (Все метки)

Доброго времени суток, форумчане! Написала программу игры крестики-нолики, все работает. Но нужно сделать прям приложение, чтобы можно было играть с компьютером, помогите осуществить это..
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
21.11.2012, 20:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как создать приложение? (C++):

Как создать сетевое приложение? - C++
Приветствую! У меня есть цель создать сетевое приложение. Я с этим никогда не сталкивался соответственно такой вопрос как это делать? ...

Как создать сетевое приложение - C++
Вообщем как связать две элементарных программы с разных компьютеров подключённых к интернету?

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

как создать неконсольное приложение - C++
куда там запихивать сам текст .cpp? не могу никак разобраться

Как создать оконное приложение с помощью MinGW - C++
Блин, вообще не могу понять как создать оконное приложение с помощью MinGW... это ведь возможно?

Как создать оконное приложение в Visual Studio C++ - C++
Доброго времени суток. Нужна помощь. Как создать оконное приложение в Visual Studio (не знаю т.к. раньше только в консольном писал код),...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MrGluck
Модератор
Эксперт CЭксперт С++
7210 / 4376 / 638
Регистрация: 29.11.2010
Сообщений: 11,887
21.11.2012, 20:33 #2
C++
1
2
3
4
5
6
void clrscr()
{
     for( int i=0;i<40;i++)
     {
          std::cout<<std::endl;
          }
круто конечно, но system("cls"); слегка лучше
Вам нужно написать ИИ (искусственный интеллект), начните с банальной вставки нолика в незанятое место, а далее придумайте несколько стратегий, все через if else. В крестиках-ноликах возможностей то немного.
Ане4кA
1 / 1 / 0
Регистрация: 05.05.2011
Сообщений: 66
21.11.2012, 20:49  [ТС] #3
Цитата Сообщение от MrGluck Посмотреть сообщение
начните с банальной вставки нолика в незанятое место,
Можно пример?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.11.2012, 20:49
Привет! Вот еще темы с ответами:

Как создать консольное приложение c++ в Visual Studio Community 2015 - C++
Файл-&gt;Новый-&gt;Создать проект-&gt;Шаблоны-&gt;Другие языки-&gt;Visual c++ а дальше нет консольного приложения. Что делать? Искал в интернете,...

Как создать windows forms приложение с возможностью работы с win32? - C++
Значит смысл примерно такой. Хочу создать Windows Forms приложении на C++. Это я делать умею. Все получилось. Проблема в том, что мне по...

Как создать полноценное приложение на WinApi с различными элементами (textbox.) подскажите книгу - C++
Как создать полноценное приложение на WinApi с различными элементами(checkbox, textbox, button и тд) и как обрабатывать события от них,...

Как создать приложение с интерфейсом - C++
Доброго времени суток, Вам. Меня очень интересует вопрос, но я не знаю как его правильно сформулировать. Вообще, я знаю С, сейчас...


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

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

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