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

Крестики-нолики: как определить победителя? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Динамические массивы (вывести новую последовательность чисел C, где каждое из чисел C(i) = A(i) + B(N-1-i)) http://www.cyberforum.ru/cpp-beginners/thread723482.html
Пользователь вводит в программу через консоль две последовательности положительных целых чисел А и B, каждая из которых завершается нулем либо отрицательным числом. Программа выводит новую последовательность чисел C, где каждое из чисел C(i) = A(i) + B(N-1-i), где N - длина наименьшей из последовательностей. Я думал написать программу через 3 функции и 3 массива. Хотел что бы две функции...
C++ Классы. Файлы. Топ файлов написать программу Создать класс File. Добавить метод, который считает сколько файлов на определённом диске. Создать метод Competition. Он показывает файлов какого типа больше всего, а также их кол-во. Метод Top50. Распечатывает таблицу наиболее популярных расширений. Помогите пожалуйста сделать это или какую-то часть. Буду очень благодарен. http://www.cyberforum.ru/cpp-beginners/thread723472.html
C++ Добавить RichEdit 2.0 в VS2012 (MFC)
Добавляю на диалоговое окно RichEdit 2.0 из списка компонентов - приложение после запуска сразу же закрывается. Проход по мейну идёт так буд-то бы я сразу нажал кнопку завершения приложения! Попробовал создать несколько проектов - всюду так, только добавляешь richEdit 2.0 так проект сразу же перестаёт работать, удаляешь и снова работает. Что нужно сделать чтобы и rich edit 2.0 был и проект...
C++ Dev C++
Подскажите с советом. Если программа написанно на Visual Studio 2012, а нужно открыть в Dev C++, подскажите, что поменять нужно чтоб работала
C++ Работа со структурами http://www.cyberforum.ru/cpp-beginners/thread723455.html
Есть код программы,к сожалению не мой,пытаюсь его понять но не все понятно. #include <iostream> #include <string.h> #include <iomanip> using namespace std; const int MAX_TRIPS = 10; struct Trip { Trip ( int number, char *type, char *destination, double otT, double prT); //что нам дает эта запись?почему она одноименна со структурой?
C++ объясните пожалуйста эту программу #include <conio.h> #include <iostream> struct STUDENT { char fio; /* фамилия и.о. */ char oc; /* 5 оценок + '\n' + '\0' */ }; void main() { setlocale (LC_ALL, "Russian_Russia.1251"); //русская кодировка подробнее

Показать сообщение отдельно
tnk500
113 / 117 / 25
Регистрация: 25.08.2012
Сообщений: 1,216
Завершенные тесты: 3
09.10.2014, 14:11     Крестики-нолики: как определить победителя?
Также делаю консольные Крестики-нолики (задание в конце гл. 9 книги Дейтелов).
Появились вопросы (собственно, в общем случае эти проблемы меня мучили давно):

1. Как написать AI? Я написал такую функцию:
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
11
void TicTacToe::AI()
{
    for(int e = 0; e <= 9; e++)
    {
        int i = 0 + rand() % 2;
        int j = 0 + rand() % 2;
        if( field[i][j] == ' ' )
        {   field[i][j] = 'o'; break;   }
    }
         // srand использовал
}

После третьего хода компьютер вообще не выставляет нолики. Я могу ходить, но комп на это совершенно не реагирует.

2. Допустим, юзер ввел неверные значения (несуществующие индексы массива указал, например). Хочется, чтобы по этому факту выводилось сообщение, а затем чтобы ввод повторился (т.е. чтобы функция ввода перезапустилась).

Вот программа хода игрока:
Кликните здесь для просмотра всего текста
C++
1
2
3
4
5
6
7
8
9
10
void TicTacToe::ThePlayersTurn()
{
    cout << "Enter firstly the cell's row, then its collumn:\n";
    int a, b;
    cin >> a >> b;
    if( field[a - 1][b - 1] == ' ' )
        field[a - 1][b - 1] = 'x';
    else 
         // вот здесь должны находится команды, о которых я спрашиваю
}


P.S. С С++ знаком пока что только на основе тех 9 глав.
 
Текущее время: 15:00. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru