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

Шашки, разработка алгоритма - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 4.70
Kures
0 / 0 / 0
Регистрация: 20.03.2013
Сообщений: 4
20.03.2013, 19:28     Шашки, разработка алгоритма #1
Доброго времени суток!
В уч.заведении задали сделать работу, вот её содержание:
"Разработка программы анализа позиции на шашечной доске. На шашечной доске расставлены несколько шашек двух цветов.
Составьте структуру данных для кодирования их позиций. На основе этой структуры разработайте алгоритм, который проверяет,
какие фигуры находятся под ударом, кто им угрожает, и сколько шашек может быть побит за один удар.
Обеспечьте ввод данных о расположении шашек из файла."

Поискав здесь на форуме схожие задачи нашел частично код с выводом шахматной доски. Я его немного покромсал и убрал немного лишних деталей.Вообщем прошу, если не сложно помогите доработать этот код или хотя бы подсказать на примере как сделать такой алгоритм и структуру. Вот собственно кусок кода. Буду очень благодарен за помочь и подсказки.
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
101
102
103
104
105
106
107
108
109
110
111
#include "stdafx.h"
#include <iostream> 
#include <conio.h>
#include <windows.h>
using namespace std;
 
void show_menu() // главное меню
{
  setlocale(0, "russian");
  cout<<"Шашки                              \n\n";
 
  cout<<"Новая игра - (нажмите кнопку N)    \n";
  cout<<"Правила - (нажмите кнопку R)       \n";
  cout<<"Выйти - (нажмите кнопку Q)         \n";
 
}    
 
void show_ruls() //раздел с правилами
 
 {
    cout<<"                    Правила игры в Шашки""\n\n\n";
    cout<<"Данная игра содержит в себе лишь алгоритм для проверки возможности"; 
    cout<<"ходов человека выбранной шашкой. В начале игры Пользователю выдается"; 
    cout<<"случайно колличество шашек на случайных клетах. Он иммет возможность";  
    cout<<"выбрать одну из них и походить ею. Если ход будет существовать, то шашка";   
    cout<<"переместится на выбранную клетку. В противном случае пользователь получит";   
    cout<<"сообщение о том, что хода не существует. Удачной игры! ) \n\n\n"; 
  
  
    cout<<"Вернуться в меню - (нажмите кнопку M)    \n"; 
    cout<<"Покинуть игру - (нажмите кнопку Q)       \n";
 }           
 
int main() //тело программы
{ 
  int textbackground(1);
      
    char matrix[8][8] = { ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ', ' ',' ',' ',' ',};
    char button='m';
 
    do {
    
        if (button=='m')    
 
       {
   
            system("cls"); //функция очистки экрана               
            show_menu();
            button=getch();    
   
       }    
 
        if (button=='r')    
 
       {
            system("cls");                 
            show_ruls();
            button=getch();    
        }  
 
 
        if (button=='n')
 
        {
           system("cls");                
 
           ("\n                                    Игра Шашки \n\n\n");
 
 
  cout<<"                 1     2     3     4     5     6     7     8     \n";
  cout<<"              /-----------------------------------------------\\ \n";
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"           a  |  "<<matrix[0][0]<<"  |  "<<matrix[0][1]<<"  |  "<<matrix[0][2]<<"  |  "<<matrix[0][3]<<"  |  "<<matrix[0][4]<<"  |  "<<matrix[0][5]<<"  |  "<<matrix[0][6]<<"  |  "<<matrix[0][7]<<"  | \n";
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"              ------------------------------------------------- \n";    
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"           b  |  "<<matrix[1][0]<<"  |  "<<matrix[1][1]<<"  |  "<<matrix[1][2]<<"  |  "<<matrix[1][3]<<"  |  "<<matrix[1][4]<<"  |  "<<matrix[1][5]<<"  |  "<<matrix[1][6]<<"  |  "<<matrix[1][7]<<"  | \n";
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"              ------------------------------------------------- \n";   
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"           c  |  "<<matrix[2][0]<<"  |  "<<matrix[2][1]<<"  |  "<<matrix[2][2]<<"  |  "<<matrix[2][3]<<"  |  "<<matrix[2][4]<<"  |  "<<matrix[2][5]<<"  |  "<<matrix[2][6]<<"  |  "<<matrix[2][7]<<"  | \n";
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"              ------------------------------------------------- \n";   
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"           d  |  "<<matrix[3][0]<<"  |  "<<matrix[3][1]<<"  |  "<<matrix[3][2]<<"  |  "<<matrix[3][3]<<"  |  "<<matrix[3][4]<<"  |  "<<matrix[3][5]<<"  |  "<<matrix[3][6]<<"  |  "<<matrix[3][7]<<"  | \n";
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"              ------------------------------------------------- \n";   
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"           e  |  "<<matrix[4][0]<<"  |  "<<matrix[4][1]<<"  |  "<<matrix[4][2]<<"  |  "<<matrix[4][3]<<"  |  "<<matrix[4][4]<<"  |  "<<matrix[4][5]<<"  |  "<<matrix[4][6]<<"  |  "<<matrix[4][7]<<"  | \n";
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"              ------------------------------------------------- \n";   
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"           f  |  "<<matrix[5][0]<<"  |  "<<matrix[5][1]<<"  |  "<<matrix[5][2]<<"  |  "<<matrix[5][3]<<"  |  "<<matrix[5][4]<<"  |  "<<matrix[5][5]<<"  |  "<<matrix[5][6]<<"  |  "<<matrix[5][7]<<"  | \n";
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"              ------------------------------------------------- \n";   
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"           g  |  "<<matrix[6][0]<<"  |  "<<matrix[6][1]<<"  |  "<<matrix[6][2]<<"  |  "<<matrix[6][3]<<"  |  "<<matrix[6][4]<<"  |  "<<matrix[6][5]<<"  |  "<<matrix[6][6]<<"  |  "<<matrix[6][7]<<"  | \n";
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"              ------------------------------------------------- \n";   
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"           h  |  "<<matrix[7][0]<<"  |  "<<matrix[7][1]<<"  |  "<<matrix[7][2]<<"  |  "<<matrix[7][3]<<"  |  "<<matrix[7][4]<<"  |  "<<matrix[7][5]<<"  |  "<<matrix[7][6]<<"  |  "<<matrix[7][7]<<"  | \n";
  cout<<"              |     |     |     |     |     |     |     |     |\n";
  cout<<"              \\-----------------------------------------------/ \n";    
         
  button=getch(); 
 
 }
 
} while (button!='q');    
    
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.03.2013, 19:28     Шашки, разработка алгоритма
Посмотрите здесь:

Шашки C++
Шашки C++
шашки C++ C++
Разработка алгоритма 2 C++
C++ Разработка алгоритма и программы сжатия и восстановления массива
Игра шашки: Исправить копирование шашки заместо переставления C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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