Размещено 3 года назад по предмету
Информатика
от
erkein65
Нужно доделать программу "Ход коня" отдам быллы которые смогу.
def cell_to_cords(cell_name):
letter_to_cord = {'A': 1, 'B': 2, 'C': 3, 'D': 4, 'E': 5, 'F': 6, 'G': 7, 'H': 8}
return letter_to_cord[cell_name[0]], int(cell_name[1])
def cords_to_name(cords):
name = {1: 'A', 2: 'B', 3: 'C', 4: 'D', 5: 'E', 6: 'F', 7: 'G', 8: 'H'}
return name[cords[0]] + str(cords[1])
def generate_possible_moves(cords):
move_deltas = [(-2, -1), (-2, 1), (-1, -2), (-1, 2), (1, -2), (1, 2), (2, -1), (2, 1)]
# Из текущей координаты нужно получить список из 8 возможных координат для движения коня (формат результата - см. строку выше)
pass
def generate_correct_moves(possible_moves):
# Из восьми возможных конечных координат коня отсеивает те, что выходят за пределы доски
pass
def get_possible_knight_moves(cur_knight_pos):
possible_moves = generate_possible_moves(cell_to_cords(cur_knight_pos))
correct_moves = generate_correct_moves(possible_moves)
for move in range(len(correct_moves)):
correct_moves[move] = cords_to_name(correct_moves[move])
return sorted(correct_moves)
if __name__ == '__main__':
current_knight_pos = input('Enter current knight position:')
print(*get_possible_knight_moves(current_knight_pos))
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.