# ШАХОВА ДОШКА - МАТРИЦЯ З ВИКОРИСТАННЯМ СЛАЙСІВ # Створюємо початкову матрицю 8x8 chessboard = [['.' for _ in range(8)] for _ in range(8)] print("ПОЧАТКОВА МАТРИЦЯ:") for row in chessboard: print(row) print("\n" + "="*50) # Використовуємо слайси для заповнення чорних клітин # Заповнюємо перший рядок (індекс 0) - починаємо з першої клітини чорною chessboard[0][::2] = ['B'] * 4 # Кожна друга клітина з індексу 0 chessboard[0][1::2] = ['W'] * 4 # Кожна друга клітина з індексу 1 print("ПІСЛЯ ЗАПОВНЕННЯ ПЕРШОГО РЯДКА СЛАЙСАМИ:") for row in chessboard: print(row) print("\n" + "="*50) # Заповнюємо всі рядки з парними індексами (0,2,4,6) for i in range(0, 8, 2): # Крок 2 - парні індекси chessboard[i][::2] = ['B'] * 4 # Чорні на парних позиціях chessboard[i][1::2] = ['W'] * 4 # Білі на непарних позиціях # Заповнюємо всі рядки з непарними індексами (1,3,5,7) for i in range(1, 8, 2): # Крок 2 - непарні індекси chessboard[i][::2] = ['W'] * 4 # Білі на парних позиціях chessboard[i][1::2] = ['B'] * 4 # Чорні на непарних позиціях print("ШАХІВНИЦЯ ПІСЛЯ ЗАПОВНЕННЯ СЛАЙСАМИ:") print(" a b c d e f g h") for i, row in enumerate(chessboard): print(f"{8-i} {row} {8-i}") print(" a b c d e f g h") print("\n" + "="*50) # Робота з підматрицями за допомогою слайсів print("РОБОТА З ПІДМАТРИЦЯМИ:") # Витягуємо ліву половину дошки (стовпці a-d) left_half = [row[:4] for row in chessboard] print("\nЛіва половина (стовпці a-d):") for row in left_half: print(row) # Витягуємо праву половину дошки (стовпці e-h) right_half = [row[4:] for row in chessboard] print("\nПрава половина (стовпці e-h):") for row in right_half: print(row) # Витягуємо центр дошки (рядки 3-6, стовпці c-f) center = [row[2:6] for row in chessboard[2:6]] print("\nЦентр дошки (рядки 3-6, стовпці c-f):") for row in center: print(row) print("\n" + "="*50) # Зміна кольору конкретної області за допомогою слайсів print("ЗМІНА КОЛЬОРУ ОБЛАСТІ СЛАЙСАМИ:") # Створюємо копію для модифікації custom_board = [row.copy() for row in chessboard] # Змінюємо центр дошки на 'X' for i in range(3, 5): # Рядки 4-5 (індекси 3-4) custom_board[i][2:6] = ['X'] * 4 # Стовпці c-f print("Дошка з виділеним центром:") for row in custom_board: print(row) print("\n" + "="*50) # Використання слайсів для створення діагоналей print("ДІАГОНАЛІ ЗА ДОПОМОГОЮ СЛАЙСІВ:") # Головна діагональ main_diagonal = [chessboard[i][i] for i in range(8)] print(f"Головна діагональ: {main_diagonal}") # Побічна діагональ secondary_diagonal = [chessboard[i][7-i] for i in range(8)] print(f"Побічна діагональ: {secondary_diagonal}") # Кожен другий рядок every_second_row = chessboard[::2] print("\nКожен другий рядок:") for row in every_second_row: print(row) # Кожен другий стовпець every_second_column = [row[::2] for row in chessboard] print("\nКожен другий стовпець:") for row in every_second_column: print(row)
Standard input is empty
ПОЧАТКОВА МАТРИЦЯ: ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ================================================== ПІСЛЯ ЗАПОВНЕННЯ ПЕРШОГО РЯДКА СЛАЙСАМИ: ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ['.', '.', '.', '.', '.', '.', '.', '.'] ================================================== ШАХІВНИЦЯ ПІСЛЯ ЗАПОВНЕННЯ СЛАЙСАМИ: a b c d e f g h 8 ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] 8 7 ['W', 'B', 'W', 'B', 'W', 'B', 'W', 'B'] 7 6 ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] 6 5 ['W', 'B', 'W', 'B', 'W', 'B', 'W', 'B'] 5 4 ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] 4 3 ['W', 'B', 'W', 'B', 'W', 'B', 'W', 'B'] 3 2 ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] 2 1 ['W', 'B', 'W', 'B', 'W', 'B', 'W', 'B'] 1 a b c d e f g h ================================================== РОБОТА З ПІДМАТРИЦЯМИ: Ліва половина (стовпці a-d): ['B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B'] ['B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B'] ['B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B'] ['B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B'] Права половина (стовпці e-h): ['B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B'] ['B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B'] ['B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B'] ['B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B'] Центр дошки (рядки 3-6, стовпці c-f): ['B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B'] ['B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B'] ================================================== ЗМІНА КОЛЬОРУ ОБЛАСТІ СЛАЙСАМИ: Дошка з виділеним центром: ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B', 'W', 'B', 'W', 'B'] ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] ['W', 'B', 'X', 'X', 'X', 'X', 'W', 'B'] ['B', 'W', 'X', 'X', 'X', 'X', 'B', 'W'] ['W', 'B', 'W', 'B', 'W', 'B', 'W', 'B'] ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] ['W', 'B', 'W', 'B', 'W', 'B', 'W', 'B'] ================================================== ДІАГОНАЛІ ЗА ДОПОМОГОЮ СЛАЙСІВ: Головна діагональ: ['B', 'B', 'B', 'B', 'B', 'B', 'B', 'B'] Побічна діагональ: ['W', 'W', 'W', 'W', 'W', 'W', 'W', 'W'] Кожен другий рядок: ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] ['B', 'W', 'B', 'W', 'B', 'W', 'B', 'W'] Кожен другий стовпець: ['B', 'B', 'B', 'B'] ['W', 'W', 'W', 'W'] ['B', 'B', 'B', 'B'] ['W', 'W', 'W', 'W'] ['B', 'B', 'B', 'B'] ['W', 'W', 'W', 'W'] ['B', 'B', 'B', 'B'] ['W', 'W', 'W', 'W']