cpp

Операторы и циклы

Операторы позволяют выполнить определенные действия с данными. Например, операторы присваивания служат для сохранения данных в переменной, математические операторы предназначены для арифметических вычислений, а условные операторы позволяют в зависимости от значения логического выражения выполнить отдельный участок программы или наоборот не выполнять его.

Математические операторы

Производить арифметические вычисления позволяют следующие операторы:

  • + — сложение:
fmt.Println(10 + 15) // 25
  • - — вычитание:
fmt.Println(35 - 15) // 20
  • - — унарный минус:
x := 10
fmt.Println(-x)      // -10
  • * — умножение:
fmt.Println(25 * 2)  // 50
  • / — деление. Если производится деление целых чисел, то остаток отбрасывается и возвращается целое число. Деление вещественных чисел производится классическим способом. Пример:
fmt.Println(10 / 3)     // 3
fmt.Println(10.0 / 3.0) // 3.3333333333333335
fmt.Println(10.0 / 3)   // 3.3333333333333335

Целочисленное деление на 0 приведет к ошибке. Деление вещественного числа на 0 приведет к значению плюс или минус Inf (бесконечность), а деление вещественного числа 0.0 на 0.0 — к значению NaN (нет числа):

var x, y, z float64 = 10.5, 0.0, 0.0
// var n, k int = 10, 0
// fmt.Println(n / k)
// panic: runtime error: integer divide by zero
fmt.Println(x / y)                      // +Inf
fmt.Println(z / y)                      // NaN
// import "math"
fmt.Println(math.Inf(1))                // +Inf
fmt.Println(math.Inf(-1))               // -Inf
fmt.Println(math.NaN())                 // NaN
fmt.Println(math.NaN() + 1)             // NaN
fmt.Println(0 * math.Inf(1))            // NaN
fmt.Println(math.Inf(1) / math.Inf(1))  // NaN
fmt.Println(math.Inf(-1) + math.Inf(1)) // NaN
  • % — остаток от деления. Обратите внимание на то, что этот оператор нельзя применять к вещественным числам. Пример:
fmt.Println(10 % 2) // 0 (10 - 10 / 2 * 2)
fmt.Println(10 % 3) // 1 (10 - 10 / 3 * 3)
fmt.Println(10 % 4) // 2 (10 - 10 / 4 * 4)
fmt.Println(10 % 6) // 4 (10 - 10 / 6 * 6)
  • ++ — оператор инкремента. Увеличивает значение переменной на 1:
var x int = 10
x++
fmt.Println(x) // 11
  • -- — оператор декремента. Уменьшает значение переменной на 1:
var x int = 10
x--
fmt.Println(x) // 9
На заметку

Учебник Go (Golang)
Учебник Go (Golang) в формате PDF

Помощь сайту

ЮMoney (Yandex-деньги): 410011140483022

ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов

cpp