package main

// Арифметические операторы
func main() {
	{ // Сложение
		a := 1
		b := 2
		_ = a + b // 3
	}

	{ // Вычитание
		a := 3
		b := 2
		_ = a - b // 1
	}

	{ // Умножение
		a := 2
		b := 3
		_ = a * b // 6
	}

	{ // Деление
		a := 8
		b := 4
		_ = a / b // 2

		a = 10
		b = 4
		_ = a / b // 2
	}

	{ // Float
		a := 10.0
		b := 4.0
		_ = a / b // 2.5
	}

	{ // Недостаточно указать тип результирующей переменной, нужно чтобы оба операнда были одного типа
		var _ float32 = 10 / 4   // 2
		var _ float32 = 10 / 4.0 // 2.5
	}

	{ // Остаток от деления
		a := 7
		b := 3
		_ = a % b // 1
	}

	{ // Инкремент и декремент
		a := 1
		a++ // 2
		a-- // 1
	}

	{ // Конструкция для сокращения арифметических операций
		a := 5
		a += 2 // 7
		a -= 1 // 6
		a /= 2 // 3
		a %= 2 // 1
	}
}
