1 / 1 / 0
Регистрация: 14.02.2016
Сообщений: 66
1

Определить, бьет ли ферзь, находящийся в клетке (xy, y1) клетку (x2, y2)

30.03.2016, 19:17. Показов 5920. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
На шахматной доске в клетке (x1, y1) находится шахматный ферзь. Определите, бьет ли он клетку (x2, y2).
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
int main() {
int x1,y1,x2,y2;
  cin>>x1>>y1>>x2>>y2;
  int dx=x1-x2;
  int dy=y1-y2;
  if (dx<0) dx=-dx;
  if (dy<0) dy=-dy;
  if(x1==x2 || y1==y2 || dx==dy)
    cout<<"1";
  else
    cout<<"0";
return 0;
}
Почти всё правильно, но если берутся одинаковые числа, то выводит "1", хотя должен "0".
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.03.2016, 19:17
Ответы с готовыми решениями:

Определить, бьет ли ферзь, стоящий на клетке (k,l), фигуру, стоящую на клетке (m,n)
В программу вводятся натуральные числа k,l,m,n, которые являются координатами клеток шахматной...

Определить, бьет ли ферзь, стоящий на клетке (k, l), фигуру, стоящую на клетке (m, n)
В программу вводятся натуральные числа k, l, m, n, которые являются координатами клеток шахматной...

Бьет ли ферзь, стоящий на указанной клетке, фигуру, стоящую на другой указанной клетке
Требуется определить, бьет ли ферзь, стоящий на клетке с указанными координатами (номер строки и...

Бьет ли ладья, стоящая на клетке с указанными координатами, фигуру, стоящую на другой указанной клетке
Требуется определить, бьет ли ладья, стоящая на клетке с указанными координатами (номер строки и...

2
Заблокирован
30.03.2016, 19:27 2
C++
1
if((dx || dy) && (x1==x2 || y1==y2 || dx==dy))
3
1 / 1 / 1
Регистрация: 26.02.2018
Сообщений: 155
13.09.2018, 13:16 3
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
#include <iostream>
using namespace std;
 
int main(){
 
    int x1 = 0, y1 = 0, x2 = 0, y2 = 0;
    cin >> x1 >> y1 >> x2 >> y2;
    int dx = x1 - x2;
    int dy = y1 - y2;
 
    if (dx < 0)
        dx =- dx;
    if (dy < 0)
        dy =- dy;
 
    if((dx || dy) && (x1 == x2 || y1 == y2 || dx == dy))
        cout << "1";
    else
        cout << "0";
 
    system("pause");
    return 0;
 
}
0
13.09.2018, 13:16
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.09.2018, 13:16
Помогаю со студенческими работами здесь

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

определить, бьет ли ладья, стоящая на клетке с указанными координатами
Ребят, выручайте. Вобщем, если их не решу, получу по щщам ;) 1)Требуется определить, бьет ли...

Определить, бьет ли Ферзь Короля
1.Требуется определить, бьет ли ферзь, стоящий на клетке с указанными координатами (номер строки и...

Определить, бьет ли ферзь произвольную фигуру
Положение шахматных фигур на доске задается: - по горизонтали буквами; - по вертикали цифрами; ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru