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

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

Войти
Регистрация
Восстановить пароль
 
fatalkiss
0 / 0 / 0
Регистрация: 17.11.2012
Сообщений: 3
#1

Сможет ли пешка дойти до края доски - C++

17.11.2012, 00:26. Просмотров 737. Ответов 12
Метки нет (Все метки)

Условие:
На шахматном поле в произвольном порядке расставлены черные и белые пешки. Для выбранной пользователем пешки определить, сможет ли она дойти до края доски, если остальные фигуры останутся неподвижными.
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
12882 / 7268 / 810
Регистрация: 27.09.2012
Сообщений: 17,958
Записей в блоге: 2
Завершенные тесты: 1
17.11.2012, 00:29     Сможет ли пешка дойти до края доски #2
если на вертикали не мешают другие пешки, то сможет.
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
17.11.2012, 00:36     Сможет ли пешка дойти до края доски #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Croessmah Посмотреть сообщение
если на вертикали не мешают другие пешки, то сможет.
не только. Даже если мешают, но на соседней вертикали есть пешка другого цвета, то может перейти на соседнюю и дойти по ней.
fatalkiss
0 / 0 / 0
Регистрация: 17.11.2012
Сообщений: 3
17.11.2012, 11:04  [ТС]     Сможет ли пешка дойти до края доски #4
А как это прописать в С++?
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
17.11.2012, 11:20     Сможет ли пешка дойти до края доски #5
Цитата Сообщение от fatalkiss Посмотреть сообщение
А как это прописать в С++?
сначало опишите что и как вводится.
Байт
Эксперт C
15551 / 9893 / 1487
Регистрация: 24.12.2010
Сообщений: 18,506
17.11.2012, 11:27     Сможет ли пешка дойти до края доски #6
Рекурсия, наверное...
valeriikozlov
Эксперт C++
4663 / 2489 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
17.11.2012, 11:33     Сможет ли пешка дойти до края доски #7
Цитата Сообщение от Байт Посмотреть сообщение
Рекурсия, наверное...
точно, именно это и задумал )
kravam
быдлокодер
1690 / 877 / 44
Регистрация: 04.06.2008
Сообщений: 5,395
17.11.2012, 12:02     Сможет ли пешка дойти до края доски #8
Цитата Сообщение от valeriikozlov Посмотреть сообщение
не только. Даже если мешают, но на соседней вертикали есть пешка другого цвета, то может перейти на соседнюю и дойти по ней.
необязательно пешка другого цвета, но любая фигура другого цвета кроме короля
Croessmah
Модератор
Эксперт CЭксперт С++
12882 / 7268 / 810
Регистрация: 27.09.2012
Сообщений: 17,958
Записей в блоге: 2
Завершенные тесты: 1
17.11.2012, 12:13     Сможет ли пешка дойти до края доски #9
Цитата Сообщение от kravam Посмотреть сообщение
необязательно пешка другого цвета, но любая фигура другого цвета кроме короля
вообще то на поле только пешки
Dima_c8
4 / 4 / 0
Регистрация: 17.12.2011
Сообщений: 148
17.11.2012, 12:21     Сможет ли пешка дойти до края доски #10
В шахматах пешка не считается фигурой
Байт
Эксперт C
15551 / 9893 / 1487
Регистрация: 24.12.2010
Сообщений: 18,506
17.11.2012, 12:30     Сможет ли пешка дойти до края доски #11
C
1
2
3
4
5
6
7
8
9
 static int D[8][8];
 int F(i,j) 
{
  if (j==7) return 1; // уже дошла
  if (D[i][j+1]==0 && F(i, j+1))  return 1;
  if (i>0 && D[i-1][j+1]==-1 && F(i-1, j+1)) return 1;
  if (i<7 && D[i+1][j+1]==-1 && F(i+1, j+1)) return 1;
  return 0;
}
Надеюсь, почтенной публике не требуются объяснения смысла переменных

Добавлено через 3 минуты
Цитата Сообщение от Dima_c8 Посмотреть сообщение
В шахматах пешка не считается фигурой
Я думал, что это только у вас в Одессе. Ан нет!
основная единица измерения шахматного материала (в шахматах её не принято называть фигурой).
(Википедия)
fatalkiss
0 / 0 / 0
Регистрация: 17.11.2012
Сообщений: 3
17.11.2012, 14:51  [ТС]     Сможет ли пешка дойти до края доски #12
По логике: Всего 64 клетки на шахматной доске. Вводится должно 8 белых и 8 черных пешок в произвольном порядке. Получается, что нужно присваивать рандом значения на доске. В случае, когда пешка сможет подняться по вертикали и на ее пути не будет стоять пешки противоположной фракции условие будет выполняться.
Как примерно будет выглядеть такой код?

Добавлено через 2 минуты
Спасибо большое, Байт
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.11.2012, 14:52     Сможет ли пешка дойти до края доски
Еще ссылки по теме:

C++ Задачка. Поле шахматной доски
C++ Определить может ли пешка выполнить ход
Может ли пешка выполнить ход из клетки с координатами (X1, Y1) в клетку с координатами (X2, Y2)? C++
C++ Написать шаблон шахматной доски
Обход доски конем C++

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

Или воспользуйтесь поиском по форуму:
Croessmah
Модератор
Эксперт CЭксперт С++
12882 / 7268 / 810
Регистрация: 27.09.2012
Сообщений: 17,958
Записей в блоге: 2
Завершенные тесты: 1
17.11.2012, 14:52     Сможет ли пешка дойти до края доски #13
Цитата Сообщение от fatalkiss Посмотреть сообщение
По логике: Всего 64 клетки на шахматной доске. Вводится должно 8 белых и 8 черных пешок в произвольном порядке. Получается, что нужно присваивать рандом значения на доске. В случае, когда пешка сможет подняться по вертикали и на ее пути не будет стоять пешки противоположной фракции условие будет выполняться.
Как примерно будет выглядеть такой код?
Пост #11
Yandex
Объявления
17.11.2012, 14:52     Сможет ли пешка дойти до края доски
Ответ Создать тему
Опции темы

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