Форум программистов, компьютерный форум, киберфорум
Наши страницы
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/10: Рейтинг темы: голосов - 10, средняя оценка - 4.50
HeRo!N
11 / 11 / 2
Регистрация: 01.10.2010
Сообщений: 139
1

Можно ли с поля (k, l) одним ходом слона попасть на поле (m, n)?

28.10.2010, 08:45. Просмотров 1851. Ответов 7
Метки нет (Все метки)

Поле шахматной доски определяется парой натуральных чисел, каждое из которых не превосходит восьми: первое число — номер вертикали (при счете слева направо), второе — номер горизонтали (при счете снизу вверх). Даны натуральные числа k, l, m, n, каждое из которых не превосходит восьми. Требуется:
Выяснить, можно ли с поля (k, l) одним ходом слона попасть на поле (m, n). Если нет, то выяснить, как это можно сделать за два хода (указать поле, на которое приводит первый ход).

Предполагается, что указанные поля имеют один и тот же цвет.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.10.2010, 08:45
Ответы с готовыми решениями:

Вычислить, можно ли с поля (k, l) одним ходом ферзя попасть на поле (m, n)
Поле шахматной доски определяется парой натуральных чисел, каждое из которых не превосходит 8:...

Проверить, можно ли с первой заданной клетки попасть на вторую одним ходом черного слона
1. Шахматная доска содержит 8*8 клеток. Горизонтали и вертикали обозначаются цифрами 1-8. Написать...

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

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

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

7
WatsOne
36 / 37 / 13
Регистрация: 10.10.2010
Сообщений: 115
28.10.2010, 12:54 2
только один вопрос: а если и за два хода не попасть?
а если вообще нельзя будет попасть в заданную клетку, как бы конь не выворачивался? (хотя помойму это маловероятно, вроде есть теорема что конём можно хоть куда придти..)
0
кот Бегемот
Платежеспособный зверь
8544 / 3971 / 1554
Регистрация: 28.10.2009
Сообщений: 10,356
28.10.2010, 12:58 3
WatsOne, ты прямо как Высоцкий: королей я путаю с тузами.
В задаче-то про слона говорят, а не про коня
0
WatsOne
36 / 37 / 13
Регистрация: 10.10.2010
Сообщений: 115
28.10.2010, 13:03 4
кот Бегемот, упс! бывает, задумался)
0
Dexter
286 / 146 / 34
Регистрация: 13.10.2009
Сообщений: 164
28.10.2010, 13:40 5
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var
x:array[1..3]of integer;
y:array[1..3]of integer;
begin
 readln(x[1],y[1],y[2],x[2]);
 if((x[1]+x[2]+y[1]+y[2]) mod 2 = 0) then begin
  if (abs(x[1]-x[2])=abs(y[1]-y[2])) then begin
   writeln('mona');
  end
  else begin
   y[3]:=(x[1]+y[1]+x[2]-y[2])div 2;
   x[3]:=(x[1]+y[1]-x[2]+y[2])div 2;
   if (x[3]>8) or (x[3]<1) or (y[3]>8) or (y[3]<1) then begin
    y[3]:=(x[2]+y[2]+x[1]-y[1])div 2;
    x[3]:=(x[2]+y[2]-x[1]+y[1])div 2;
   end;
   writeln('Nea, nado cherez ',x[3],',',y[3]);
  end;
 end
 else
 writeln('Raznii zvet');
 readln;
end.
Должно работать.

P.S. Есть замкнутый цикл, которым конь обходит всю доску, потому он с любой точки может попасть в любую другую за 31 или меньше ходов

Добавлено через 14 минут
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var
x:array[1..3]of integer;
y:array[1..3]of integer;
begin
 readln(x[1],y[1],x[2],y[2]);
 if((x[1]+x[2]+y[1]+y[2]) mod 2 = 0) then begin
  if (abs(x[1]-x[2])=abs(y[1]-y[2])) then begin
   writeln('mona');
  end
  else begin
   x[3]:=(x[1]+y[1]+x[2]-y[2])div 2;
   y[3]:=(x[1]+y[1]-x[2]+y[2])div 2;
   if (x[3]>8) or (x[3]<1) or (y[3]>8) or (y[3]<1) then begin
    x[3]:=(x[2]+y[2]+x[1]-y[1])div 2;
    y[3]:=(x[2]+y[2]-x[1]+y[1])div 2;
   end;
   writeln('Nea, nado cherez ',x[3],',',y[3]);
  end;
 end
 else
 writeln('Raznii zvet');
 readln;
end.
перепутал местами x и y в вводе
1
allbegood
0 / 0 / 0
Регистрация: 03.08.2016
18.11.2010, 15:57 6
DexterUa,

Путешествуя по стране чудес,Алиса случайно наткнулась на шахматного коня,зная к чему приводят встречи в чистом поле с незнакомыми девочками,конь убежал.
Поле, по которому бежит конь,имеет вид шахматной доски размерность n на n. 3<=n<=200
Чтобы убежать, конь должен перемещаться из позиции xn,yn в позицию xk,yk.Определить минимальное число ходов коня.
Входные данные:вводятся целые числа - n,xn,yn,xk,yk,разделенные пробелами или символами перевода строки при этом 3<=n<=200, 1<=xn, yk<=n.
Выходные данные: Вывести одно целое число S - минимальное количество ходов коня.
В случае невозможности перемещения коня на требуемую клетку,вывести (-1).


что ты про алгоритм для коня писал? помоги пожалуйста, иначе зачета не видать..%)
0
Puporev
Модератор
56358 / 43130 / 29833
Регистрация: 18.05.2008
Сообщений: 102,497
18.11.2010, 15:59 7
Цитата Сообщение от allbegood Посмотреть сообщение
иначе зачета не видать..%)
Что-то не похоже условие на зачетное, больше на олимпиадное...
0
allbegood
0 / 0 / 0
Регистрация: 03.08.2016
18.11.2010, 16:09 8
я не вижу смысла вводить в заблуждение тут людей. задачу дал препод в инсте...
0
18.11.2010, 16:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2010, 16:09

Можно ли одним ходом слона попасть с поля (k, l) на поле (m, n)
Поле шахматной доски определяется парой натуральных чисел, каждое из которых не превосходит восьми:...

Выяснить, можно ли с поля (k, l) одним ходом Слона попасть на поле (m, n)
(НЕ могу понять как высчитываются дополнительные точки, что такое continue и зачем цикл ) Поле...

Шахматы. Выяснить, можно ли с поля (к, l) одним ходом слона попасть на поле (m, n)
привет, помогите составить программу. Поле шахматной доски определяется парой натуральных чисел,...


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

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

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