Как из слайса сделать два слайса?

В языке программирования Go, для разделения одного слайса на два можно использовать функцию append. Функция append позволяет добавить элементы в конец слайса и возвращать новый слайс.

Для разделения слайса на два, нужно создать два новых пустых слайса и использовать функцию append для заполнения этих слайсов нужными элементами.

Вот пример кода, который показывает, как разделить слайс на два:

package main

import "fmt"

func main() {
    // Исходный слайс
    numbers := []int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

    // Создаем два новых пустых слайса
    firstHalf := []int{}
    secondHalf := []int{}

    // Получаем середину слайса
    middle := len(numbers) / 2

    // Заполняем первый слайс элементами от начала и до середины исходного слайса
    firstHalf = append(firstHalf, numbers[:middle]...)

    // Заполняем второй слайс элементами от середины исходного слайса до конца
    secondHalf = append(secondHalf, numbers[middle:]...)

    // Выводим результат
    fmt.Println("Первая половина слайса:", firstHalf)
    fmt.Println("Вторая половина слайса:", secondHalf)
}

После запуска этого кода, вы увидите следующий результат:

Первая половина слайса: [1 2 3 4 5]
Вторая половина слайса: [6 7 8 9 10]

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