mirror of https://github.com/01-edu/public.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1.1 KiB
1.1 KiB
slice
Instructions
The function receives a slice of strings and one or more integers, and returns a slice of strings. The returned slice is part of the received one but cut from the position indicated in the first int, until the position indicated by the second int.
In case there only exists one int, the resulting slice begins in the position indicated by the int and ends at the end of the received slice.
The integers can be lower than 0.
Expected function
func Slice(a []string, nbrs... int) []string{
}
Usage
Here is a possible program to test your function :
package main
import (
"fmt"
piscine ".."
)
func main(){
a := []string{"coding", "algorithm", "ascii", "package", "golang"}
fmt.Printf("%#v\n", piscine.Slice(a, 1))
fmt.Printf("%#v\n", piscine.Slice(a, 2, 4))
fmt.Printf("%#v\n", piscine.Slice(a, -3))
fmt.Printf("%#v\n", piscine.Slice(a, -2, -1))
fmt.Printf("%#v\n", piscine.Slice(a, 2, 0))
}
$ go run .
[]string{"algorithm", "ascii", "package", "golang"}
[]string{"ascii", "package"}
[]string{"ascii", "package", "golang"}
[]string{"package"}
[]string(nil)