Отчет 7 июля 2011 г

Jul 17, 2011 22:13

Разработал дизайн функции Run. Приступил к ее кодировке. Функция Run отвечает за ввод и вывод информации на экран (в консоли). Определил основные глобальные переменные программы.

//Игровой счетчик
//0 - ввод данных, 1 - игра
char START;

//Размер игрового поля
char sizeTable;
//Флаг определяет ходит ли человек первым или нет
bool goFirst;

//Счетчик количества ходов
short nmove;

//Координаты последнего хода
struct LastMove
{
    char x, y;
} lastMove;

//Структура определяет клетку игрового поля:
//content - содержание клетки (0 - ничего, 1 - крестик
//(фигура человека), 2 - нолик (фигура компа);
//rate_user, rate_comp - рейтинги человека и компа для данной клетки
struct Table
{
    short rate_comp;
    short rate_user;
    char content;
};

//Структура определяет координаты клетки и ее рейтинг (человека или компьютера
//на усмотрение программы)

struct MaxMoves
{
    char x, y;
    short rate;
};

//Структура включает структуру типа MaxMoves; переменные n20000
//(кол-во клеток с рейтингами >20000 и <30000), n30000
//(кол-во клеток с рейтингами >30000);
//n - складываем n20000 и n30000 после каждого хода
struct MaxMovesV
{
    MaxMoves Move;
    double n30000;
    double n20000;
    double n;
};

//Глубина просчитываемых ходов
char level;
char depth;

//Определяем вектор Max_moves
MaxMoves * Max_moves;

//Переменные определяют кол-во прогнозируемых векторов
//ходов (числа достаточно большие)
short NumberC;
short NumberU;

//Двумерные массивы длиной в число прогнозируемых ходов
//(NumberC, NumberU) и шириной в глубину просчитываемых ходов (depth)
MaxMovesV ** Max_moves_userV;
MaxMovesV ** Max_moves_compV;

//Вспомогательная структура с координатами
struct MaxRankMoves
{
    char x, y;
};
//Вспомогательный вектора
short * MinMovesToWin;
MaxRankMoves * MaxMovesRank;

//Вектор стратегии компьютера
MaxMoves * Strategy;

//Доска
Table ** table;
//Копия доски
Table ** table_copy;

//Линия
Table * line;

//Вспомогательные вектора
char * I;
double * nSC;
double * nSU;

//Сложностные вектора
char MovesDifficity5[5] = {20, 10, 7, 4, 2};
char MovesDifficity4[4] = {25, 10, 5, 3};
char MovesDifficity3[3] = {35, 23, 7};
char MovesDifficity2[2] = {50, 50};
char MovesDifficity1[1] = {100};
char MovesDifficity[5];
P.S. И всё же надоела эта практика! Какого я поступил в политех? Надо было поступать в СПбГУ ИТМО. Но уже поздно, так что остается только надежда купить диплом ВУЗа в СПб, чтобы иметь более-менее ценный диплом.

Программирование, Лето, Информатика, Компьютер

Previous post Next post
Up