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

Определить сможет ли шахматная фигура съесть пешку по ее координатам - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Определить, есть ли среди целых чисел A, B, C хотя бы одно парное http://www.cyberforum.ru/cpp-beginners/thread1552550.html
Определить, есть ли среди целых чисел A, B, C хотя бы одно парное. Нужно набрать в Dev C++ помогите пожалуйста
C++ Перевод с Паскаля на Си. Определить время суток Нужна помощь в переводе с паскаля на С ++ п. 5.18. Правил Запрещено размещать задания и решения в виде картинок и других файлов с их текстом. http://www.cyberforum.ru/cpp-beginners/thread1552543.html
Вычислить значение функции заданной разложением в ряд Тейлора C++
.Вычислить с заданной точностью значение функции, представленной в виде суммы бесконечного ряда. Для проверки результата предусмотреть в программе вычисление функции по контрольной фор-муле. Пункт 5.18. Правил Запрещено размещать задания и решения в виде картинок и других файлов с их текстом.
Вычислить значение функции заданной разложением в ряд Тейлора C++
Помогите формулу записать \inline s=\sum_{n}^{}*\frac{{x}^{2n+1}}{(2*n+1)!}
C++ Разница первой и последней компоненты файла http://www.cyberforum.ru/cpp-beginners/thread1552526.html
Дан файл, компоненты которого действительные числа. Помогите с написанием программы, которая вычисляет разницу между первой и последней компонентой файла :sorry:
C++ Вычислить математические функции с заданной точностью Помогите формулу записать подробнее

Показать сообщение отдельно
EarlSweatshirt
0 / 0 / 0
Регистрация: 14.10.2015
Сообщений: 2
14.10.2015, 22:31     Определить сможет ли шахматная фигура съесть пешку по ее координатам
Помогите пожалуйста. Задачу не принимает. Пишет, что неправильный ответ на каком-то тесте.

Задача:

Нужно найти сможет ли шахматная фигура съесть пешку указав их координаты.
Введите координаты и название фигуры(одного из нижеследующих):
1. rook (ладья)
2. bishop (слон)
3. knight (конь)
Затем укажите координаты жертвы.
Выведите YES если фигура может съесть жертву, NO если нет.
Считается что только эти две фигуры находятся на шахматной доске.

Пример:
Ввод:
rook 4 b
7 b
Вывод:
YES

Пример:
Ввод:
bishop 2 e
3 b
Вывод:
NO

Вот мой код:

C++ (Qt)
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
#include <iostream>
using namespace std;
int main() {
 
    int i,j,x1,x2,y1,y2,k=0;
    
    string a;
    
    char y01,y02;
    char f[9] = "abcdefgh";
    
    cin>>a;
    cin>>x1>>y01;
    cin>>x2>>y02;
    
    for (int i=0;i<8;i++) {
        if (f[i]==y01) y1 = i+1;
        if (f[i]==y02) y2 = i+1;
    }
    
    if (a == "rook") {  
// rook rook rook rook rook rook rook rook  
        if (x1 == x2 || y1 == y2) {
            cout<<"YES";
            
        }
        else {
            cout<<"NO";
        }
// rook rook rook rook rook rook rook rook
    }
    
    else if (a == "bishop") {
// bishop bishop bishop bishop bishop bishop    
        for (i=1;i<=8;i++) {
            if (((x2==x1-i)&&((y2==y1-i)||(y2==y1+i))) || ((x2==x1+i)&&((y2==y1-i)||(y2==y1+i)))){
                k=1;
            }
        }
        
        if ((x1==x2)&&(y1==y2)) {
            cout<<"YES"     ;
        }
        
        else {
            if (k!=0) {
                cout<<"YES";
            }
            else cout<<"NO";    
        }
// bishop bishop bishop bishop bishop bishop
    }
    
    else if (a == "knight") {
// knight knight knight knight knight knight
        if ((x1==x2)&&(y1==y2)) {
            cout<<"YES"     ;
        }
        else {
            if (((x2==x1+1) && ((y2==y1-2)||(y2==y1+2))) || ((x2==x1-1)&&((y2==y1-2)||(y2==y1+2))) || ((x2==x1-2)&&((y2==y1-1)||(y2==y1+1))) || ((x2==x1-2)&&((y2==y1-1)||(y2==y1+2))))  {
                cout<<"YES";
            }
            else {
                cout<<"NO";
            }
        }
// knight knight knight knight knight knight    
    }
    
    
    return 0;
}
Миниатюры
Определить сможет ли шахматная фигура съесть пешку по ее координатам  
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:23. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru