Author: rgen3

  • 5.2 Делим slice на части

    Давайте представим, у нас есть слайс, из которого мы хотим взять только часть данных, например: // из слайса slice := []int{100,200,300, 400, 500} // мы хотим получить значения 200, 300 и положить…

  • 5.1. Основы slice в Go

    Слайсы (slice, срез) в Go это структура данных, которая позволяет хранить наборы элементов одного типа. В отличии от массивов, у которых размер задается на этапе компиляции, слайсы могут иметь любой р…

  • 4.1 Массивы в Go: основы

    Массивы в Go является структурой фиксированный длины, которая содержит элементы одного типа. Объявление массива // массив можно объявить через var, например, массив из 5 элементов типа int, по у…

  • Сравнимость и упорядоченность в Go

    В материале мы рассмотрим, как операторы сравнения работают в Go. В рамках статьи частично будут рассмотрены generics, но подробности мы раскрывать не будем, так как речь о generics пойдет в следую…

  • 4.2 Массивы с точки зрения памяти

    В Go длина массивов фиксируется как часть типа на момент компиляции. // псевдокод ,примерно так будет выглядеть массив в памяти var My5IntArray = Array { len: 5 // количество элементов elem: int …

  • Буль‑bool: true, false и основы условных выражений в Go

    Тип bool в Go является встроенным примитивным типом и имеет только 2 значения: true, false. // В памяти: ~1 байт (может зависеть от реализации компилятора, выравнивания, архитектуры и пр.) type boo…

  • 2.2 Проблемы при работе с вещественными числами

    В предыдущем разделе мы рассматривали внутреннее нюансы устройства float и лишь косвенно затронули проблемы, которые могут возникать при работе с подобными числами. Обратите внимание, что статья я…

  • 2.3 Накопления ошибок при многократных операциях с плавающей точкой

    В предыдущей статье мы рассмотрели «Проблемы при работе с вещественными числами». В данной статье мы рассмотрим особенности работы типов float, когда результат должен быть точным, а мы получаем пример…

  • 2.4 Алгоритм суммирования Кэхэна (Kahan Summation Algorithm)

    В статье рассмотрим Алгоритм суммирования Кэхэна (Kahan Summation Algorithm) и основные границы его применения.

  • Устройство вещественных числел в Go

    В Go существует 2 типа для выражения чисел с плавающей точкой. // Диапазон: от -3.4028235e+38 до +3.4028235e+38 // В памяти: 4 байта. type float32 float32 // Диапазон: от -1.7976931348623157e+308 …