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

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

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

Крестики нолики, нужно немного дописать - C++

10.12.2013, 00:30. Просмотров 253. Ответов 2
Метки нет (Все метки)

Помогите пожалуйста. Нужно дописать код что бы пользователь не смог вводить уже введенное(выбранное). Если выбрали нолик, то туда уже нельзя поставить крестик.
Помогите пожалуйста, заранее огромное спасибо. не понимаю как доделать((


#include <iostream>
using namespace std;
void main()
{
setlocale( LC_ALL,"");

char a1='1', a2='2', a3='3', a4='4', a5='5', a6='6', a7='7', a8='8', a9='9';
char m;
int p;
int i=1;
bool b1, b2, b3, b4, b5, b6, b7, b8;

do {
cout<<"-------------\n";
cout<<"| | | | \n";
cout<<"| "<<a1<<" | "<<a2<<" | "<<a3<<" | \n";
cout<<"| | | | \n";
cout<<"-------------\n";
cout<<"| | | | \n";
cout<<"| "<<a4<<" | "<<a5<<" | "<<a6<<" | \n";
cout<<"| | | | \n";
cout<<"-------------\n";
cout<<"| | | | \n";
cout<<"| "<<a7<<" | "<<a8<<" | "<<a9<<" | \n";
cout<<"| | | | \n";
cout<<"-------------\n";

if (i%2) { m='x';
cout<<"Введите позицию для : "<<m;
cin>>p;
}
else
{ m='0';
cout<<"Введите позицию для : "<<m;
cin>>p;
}
switch (p){
case 1: a1=m; break;
case 2: a2=m; break;
case 3: a3=m; break;
case 4: a4=m; break;
case 5: a5=m; break;
case 6: a6=m; break;
case 7: a7=m; break;
case 8: a8=m; break;
}
b1=a1==a2&&a2==a3;
b2=a4==a5&&a5==a6;
b3=a7==a8&&a8==a9;
b4=a1==a4&&a4==a7;
b5=a2==a5&&a2==a8;
b6=a3==a6&&a2==a9;
b7=a1==a5&&a2==a9;
b8=a3==a5&&a2==a7;
if (b1||b2||b3||b4||b5||b6||b7||b8) break;



i++;

} while(i<10);

if(i<10)
cout<<"Победа для : "<<m;
else
cout<<"Ничья для : "<<m;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2013, 00:30     Крестики нолики, нужно немного дописать
Посмотрите здесь:

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

Крестики-нолики - C++
main.cpp #include &quot;KR.h&quot; using namespace std; int main() { RandomPlayer *r = new RandomPlayer('x'); ...

Крестики нолики - C++
Требование к игре: -игра в консольным окне( самое простое ) -игра с компьютером. Нужна самая простая игра. Желательно на си, чтоб...

Крестики-нолики - C++
#include &lt;iostream&gt; #include &lt;cstring&gt; using namespace std; void show_cells(); void make_move(int num); void result(); ...

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

Крестики нолики - C++
Уж слишком запутался даже в такой простом коде: #include &lt;iostream&gt; #include &lt;cstring&gt; #include &lt;string&gt; #include &lt;iomanip&gt; ...

Крестики-нолики - C++
Захотелось написать игру Крестики-нолики но тут возник один вопрос, как будет ходить компютер, если пользоватся rand-ом то компютер будет...

Крестики нолики на С - C++
Здраствуйте. Помогите пожалуйста написать игру в консоли. Это крестики нолики поле 3х3. Буду благодарен если поможете и объясните. ...

Крестики нолики - C++
Здравствуйте. Никак не получается определить, кто победил, всегда выводит ничью. Почему? #include &lt;iostream&gt; #include &lt;conio.h&gt; ...

Крестики-нолики - C++
Доброго времени суток! Вот, решил для курсовой работы написать игру Крестики-нолики. Но мне требуется маленькая помощь. Подскажите, как...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MyBestDream
3 / 3 / 1
Регистрация: 24.12.2012
Сообщений: 23
10.12.2013, 01:01     Крестики нолики, нужно немного дописать #2
Во первых - прочитайте, что такое массивы.
Если вы хотите изучать программирование, это вам нужно обязательно, если просто хотите получить зачет - поверьте, в таком виде ваш преподаватель вряд ли примет эту задачу (отправит... читать про массивы )
А по поводу проверки: там, где у вас непосредственно присваивается ячейке поля "Х" или "0", добавьте дополнительную проверку, типа "Если в данной ячейке уже стоит Х или 0, вывести ошибку и не менять её".
uhx
57 / 57 / 6
Регистрация: 11.07.2013
Сообщений: 303
10.12.2013, 01:08     Крестики нолики, нужно немного дописать #3
Цитата Сообщение от MyBestDream Посмотреть сообщение
Во первых - прочитайте, что такое массивы.
Если вы хотите изучать программирование, это вам нужно обязательно, если просто хотите получить зачет - поверьте, в таком виде ваш преподаватель вряд ли примет эту задачу (отправит... читать про массивы )
А по поводу проверки: там, где у вас непосредственно присваивается ячейке поля "Х" или "0", добавьте дополнительную проверку, типа "Если в данной ячейке уже стоит Х или 0, вывести ошибку и не менять её".
Да уж... полностью согласен с постом выше, почитайте про массивы.
Ответ Создать тему
Опции темы

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