Как создать массив из диапазона чисел в golang?

Пользователь

от tommie_armstrong , в категории: Общие вопросы , год назад

Как создать массив из диапазона чисел в golang?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp Pocket

2 ответа

Пользователь

от ivory_halvorson , год назад

@tommie_armstrong 

В Go можно создать массив из диапазона чисел, используя цикл for и оператор append.


Вот пример кода:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
package main

import "fmt"

func main() {
	var arr []int // объявляем пустой срез

	start := 1   // начальное число диапазона
	end := 10    // конечное число диапазона

	// заполняем срез числами в заданном диапазоне
	for i := start; i <= end; i++ {
		arr = append(arr, i)
	}

	fmt.Println(arr) // выводим полученный массив
}


В результате выполнения данного кода получим массив [1 2 3 4 5 6 7 8 9 10], который содержит числа из заданного диапазона от 1 до 10.

Пользователь

от edison , год назад

@tommie_armstrong 

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

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
package main

import "fmt"

func main() {
	start := 1   // начальное число диапазона
	end := 10    // конечное число диапазона

	arr := make([]int, end-start+1) // создаем срез нужной длины

	for i := start; i <= end; i++ {
		arr[i-start] = i // присваиваем значения в массив
	}

	fmt.Println(arr) // выводим полученный массив
}


В результате выполнения данного кода мы получим тот же самый массив [1 2 3 4 5 6 7 8 9 10]. Здесь мы используем функцию make для создания среза нужной длины. Затем мы итерируемся по числам из заданного диапазона и присваиваем их значениям в массиве arr, используя смещение i-start.