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

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

Войти
Регистрация
Восстановить пароль
 
KOPC1886
27 / 6 / 0
Регистрация: 28.10.2010
Сообщений: 352
#1

Конь. - C++

21.02.2011, 18:17. Просмотров 767. Ответов 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
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
// Путешествие коня2.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
#include <iomanip>
using namespace std;
 
 
int _tmain(int argc, _TCHAR* argv[])
{   // ПУТЕШЕСТВИЕ КОНЯ УПРОЩЕННАЯ ВЕРСИЯ ГУРЬЕВ ИЛЬЯ С-22
    setlocale (LC_ALL,"rus");
    const int size=8;
    const int size2=8;
    int turn=0;
    int x=0;
    int y=0;
    int k1=0;
    int k2=0;
    int h;
    int n=0;
    int troy [size][size2];
    
    for (int i=0;i<size;i++)
    {   cout <<endl;
        for (int r=0;r<size2;r++)
        troy[i][r]=-1;
    }
    
    troy[k1][k2]=0;
    do {
    for (int i=0;i<size;i++)
    {for (int r=0;r<size2;r++)
            if(troy[i][r]==-1)
                cout <<setw(4)<<"* ";
            else
                cout <<setw(4)<<troy[i][r];
            cout <<endl;            
            
            
            
            
        }
 
    
    cout <<"Введите номер хода от 1 до 8 (0 для выхода) "<<"  ";
    cin >>n;
    cout<<endl;
 
        
    if (n==1)
    {
        x=2;
        y=1;
        h=1;
 
    }
    else if (n==2)
    {
        x=1;
        y=-2;
        h=3;
    }
    else if (n==3)
    {
        x=-1;
        y=-2;
        h=1;
    }
    else if (n==4)
    {
        x=-2;
        y=-1;
        h=3;
    }
    else if (n==5)
    {
        x=-2;
        y=1;
        h=-1;
    }
    else if (n==6)
    {
        x=-1;
        y=2;
        h=-3;
    }
    else if (n==7)
    {
        x=1;
        y=2;
        h=-1;
    }
    else if (n==8)
    {
        x=2;
        y=1;
        h=-3;
    }
 
        
        if (n!=0)
        {
        if(k1>-1 && k1<8 && k2>-1 && k2<8 && n!=0) 
        {
            troy[k1+=x][k2+=y]=++turn;
            
        }
          else
        {
            cout <<"Поробуйте ещё раз номер хода от 1 до 8 (0 для выхода) "<<"  ";
            cin >>n;
        }
 
        
            
            
        
        
    }
    else 
    {
        cout <<"|||||| ";
    }
    
    }while (k1>-1 && k1<8 && k2>-1 && k2<8 && n>=1 && n<=8);
    
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2011, 18:17
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Конь. (C++):

Шахмотный конь - C++
Пожалуйста,помогите нарисовать шахматного коня.А то замаялся уже...Что бы конь был похож на коня, а не на динозавра.

Шахматы, конь - C++
Всем доброго времени суток! Буду честен - в универе задали задачу на макс.балл(все предыдущие сделал, но с этой возникла проблемка)....

Шахматная фигура конь - C++
Шахматная фигура конь ходит на 1 клетку по горизонтали и на 2 клетки по вертикали или наоборот на 2 клетки по горизонтали и на 1 по...

Бьет ли конь пешку? - C++
даны координаты коня и другой фигуры. вывести: бьет ли конь фигуру? как записать условие? вот что у меня получилось #include...

Требуется определить, бьет ли конь - C++
Здравствуйте, уважаемые программисты! помоги пожалуйста решить задачку на Паскале. Условие задачи - Требуется определить, бьет ли конь,...

Волновой алгоритм (шахматы, конь) - C++
Всем привет! Пытался написать волновой алгоритм для нахождения кратчайшего пути коня на шахматной доски из A-&gt;B. Но что-то у меня...

2
KOPC1886
27 / 6 / 0
Регистрация: 28.10.2010
Сообщений: 352
22.02.2011, 21:08  [ТС] #2
Где все то?!
0
tomaticus
47 / 47 / 2
Регистрация: 02.01.2011
Сообщений: 505
22.02.2011, 21:21 #3
ты посмотри просмотры этого поста,если много значит ни кто не знает ответа.
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.02.2011, 21:21
Привет! Вот еще темы с ответами:

Угрожает ли конь, стоящий на поле (k, l), полю (m, n) - C++
Поле шахматной доски определяется парой натуральных чисел, первое из которых задает номер вертикали, а второе — номер горизонтали. Даны...

За сколько ходов конь переместиться в указанные координаты - C++
Вводятся начальные и конечные координаты положения шахматного коня (x1, y1, x2, y2), написать программу, определяющую за сколько ходов ...

Конструктор и классы. Предметная область: «Конь на шахматной доске» - C++
Помогите написать прогу к этой задаче: Предметная область: «Конь на шахматной доске». Данные класса: координаты коня. Функции класса:...

Проверить не угрожает ли данный шахматный конь заданному полю - C++
Поле шахматной доски имеет размер 8 x 8. Клетки обозначены координатами, первая - номер по вертикале (слева на право),вторая - номер по...


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

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

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