|
1 / 1 / 0
Регистрация: 18.04.2024
Сообщений: 10
|
||||||
Все фигуры на доске18.04.2024, 22:29. Показов 2727. Ответов 12
Переработайте приведённую в уроке программу шахматы таким образом, чтобы фигуры (за исключением коня) не могли ходить друг сквозь друга.
1. Расставьте фигуры как при начале шахматной партии. Сделайте это в методе __init__ класса Board. 2. Внесите функцию print_board() также внутрь класса Board, причем обеспечьте возможность напечатать доску вызовом функции print() 3. Убедитесь, что все фигуры могут ходить правильно и не могут ходить неправильно. Я написал код, но он не проходит последний тест. Ошибка в move_piece в классе Board, как я понимаю. Переписывать код не нужно. Просто покажите где и что надо исправить или дополнить. Буду очень благодарен!!!
from solution import * board = Board() board.move_piece(1, 1, 3, 1) board.move_piece(6, 1, 4, 1) board.move_piece(0, 2, 2, 0) if board.move_piece(4, 1, 3, 1): print(board) else: print('Error') Ожидаемый результат Error Вывод +----+----+----+----+----+----+----+----+ 7 | bR | bN | bB | bQ | bK | bB | bN | bR | +----+----+----+----+----+----+----+----+ 6 | bP | | bP | bP | bP | bP | bP | bP | +----+----+----+----+----+----+----+----+ 5 | | | | | | | | | +----+----+----+----+----+----+----+----+ 4 | | | | | | | | | +----+----+----+----+----+----+----+----+ 3 | | bP | | | | | | | +----+----+----+----+----+----+----+----+ 2 | wB | | | | | | | | +----+----+----+----+----+----+----+----+ 1 | wP | | wP | wP | wP | wP | wP | wP | +----+----+----+----+----+----+----+----+ 0 | wR | wN | | wQ | wK | wB | wN | wR | +----+----+----+----+----+----+----+----+ 0 1 2 3 4 5 6 7 Сообщение Different number of lines: out = 18, corr = 1
0
|
||||||
| 18.04.2024, 22:29 | |
|
Ответы с готовыми решениями:
12
Все фигуры на доске
Фигуры на шахматной доске |
|
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,707
|
||
| 18.04.2024, 23:25 | ||
|
А почему не реализовано взятие пешки на проходе? Это не требуется?
0
|
||
|
1 / 1 / 0
Регистрация: 18.04.2024
Сообщений: 10
|
|
| 19.04.2024, 07:19 [ТС] | |
|
Большую часть программы нам давали на уроке, а тут требуют её дописать. Я написал так, как мне казалось правильно, но это не так
0
|
|
|
4523 / 1899 / 336
Регистрация: 18.01.2021
Сообщений: 3,489
|
|
| 19.04.2024, 10:06 | |
|
104, 105 строки у вас никогда выполняться не будут, поскольку в 103 строке выполнен выход из функции. Функция всегда возвращает TRUE. Соответственно по тесту всегда будет печататься доска.
1
|
|
|
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,707
|
|
| 19.04.2024, 10:19 | |
|
0
|
|
|
1 / 1 / 0
Регистрация: 18.04.2024
Сообщений: 10
|
|
| 19.04.2024, 10:29 [ТС] | |
|
К сожалению я уже не могу вам отправить исходный код. Прошу вас помочь мне с ошибкой. Что мне надо переписать, чтобы программа работала корректно?
0
|
|
|
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,707
|
|||
| 19.04.2024, 10:40 | |||
|
0
|
|||
|
1 / 1 / 0
Регистрация: 18.04.2024
Сообщений: 10
|
|
| 19.04.2024, 11:23 [ТС] | |
|
Эх, ну ладно. Придётся самому. Я просто только зарегестрировался здесь
0
|
|
|
104 / 50 / 9
Регистрация: 06.01.2024
Сообщений: 383
|
|
| 19.04.2024, 13:38 | |
|
В классе Pawn метод can_move должен правильно возвращать False, если столбец отличается от текущего, а не только если он не равен.
В классе Rook метод can_move должен возвращать значение True только в том случае, если строка или столбец совпадают с целевой строкой или столбцом, а не оба одновременно. В классе King метод can_move должен разрешать перемещение только к соседним клеткам, а не по диагонали, если только это не соседняя клетка. В методе move_piece класса Board: 1) проверка никогда не достигает особого случая при row==4, col==1, row1==3 и col1==1, поскольку она выполняется после return True; 2) условие проверки того, является ли фигура конём и свободен ли путь, должно использовать «и» вместо «не… и не…». 3) зачем проверять конкретный ход пешки внутри метода, ведь для это лучше подходит метод can_move самого класса Pawn?
1
|
|
|
1 / 1 / 0
Регистрация: 18.04.2024
Сообщений: 10
|
||||||
| 19.04.2024, 14:17 [ТС] | ||||||
|
Я немного не понял, что именно надо написать в классе Pawn вместо
0
|
||||||
|
1 / 1 / 0
Регистрация: 18.04.2024
Сообщений: 10
|
||||||
| 20.04.2024, 18:59 [ТС] | ||||||
|
немного переделал код, но всё равно неправильно. Помогите, пожалуйста!idealist, ANT0NY, Red white socks,
![]()
0
|
||||||
|
1 / 1 / 0
Регистрация: 18.04.2024
Сообщений: 10
|
||||||
| 20.04.2024, 19:51 [ТС] | ||||||
|
я ошибся и вставил полностью нерабочий код, простите. Вот код, который не проходит последний тест. Кто поможет до послезавтра скину 100 руб. на карту. Прошуууууу. P. S. если не тяжело, скиньте готовый код и скажите, что и где вы исправили. КОД ИСПРАВИТЬ, НЕ ПЕРЕПИСЫВАТЬ!
5 Ввод from solution import * board = Board() board.move_piece(1, 1, 3, 1) board.move_piece(6, 1, 4, 1) board.move_piece(0, 2, 2, 0) if board.move_piece(4, 1, 3, 1): print(board) else: print('Error') Ожидаемый результат Error Вывод +----+----+----+----+----+----+----+----+ 7 | bR | bN | bB | bQ | bK | bB | bN | bR | +----+----+----+----+----+----+----+----+ 6 | bP | | bP | bP | bP | bP | bP | bP | +----+----+----+----+----+----+----+----+ 5 | | | | | | | | | +----+----+----+----+----+----+----+----+ 4 | | | | | | | | | +----+----+----+----+----+----+----+----+ 3 | | bP | | | | | | | +----+----+----+----+----+----+----+----+ 2 | wB | | | | | | | | +----+----+----+----+----+----+----+----+ 1 | wP | | wP | wP | wP | wP | wP | wP | +----+----+----+----+----+----+----+----+ 0 | wR | wN | | wQ | wK | wB | wN | wR | +----+----+----+----+----+----+----+----+ 0 1 2 3 4 5 6 7 Сообщение Different number of lines: out = 18, corr = 1 Добавлено через 1 минуту ANT0NY, idealist,
0
|
||||||
|
4523 / 1899 / 336
Регистрация: 18.01.2021
Сообщений: 3,489
|
|
| 21.04.2024, 02:01 | |
|
Код править не буду, ибо ошибок дофига, да и сама архитектура программы мне совсем не нравится. Но в данном тесте проблема, что пешка должна бить наискосок (взятие на проходе - отдельный разговор). А у вас как прямо ходит, так и бьет.
0
|
|
| 21.04.2024, 02:01 | |
|
Помогаю со студенческими работами здесь
13
Все фигуры на доске Все фигуры на доске Положение фигуры на доске и все клетки, которые фигура бьёт Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Old Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/
O1rJuneU_ls
https:/ / vkvideo. ru/ video-115721503_456239114
|
|
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ВВЕДЕНИЕ
Введу сокращения:
аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
|
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi
ветка по-частям.
коммит Create переделка под биомассу. txt
вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
|
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ *
Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях.
Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её.
Последовательность действий:. . .
|
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
|