Основы Go

Go Operators and Arithmetic

Why is 17 / 5 equal to 3 in Go? Learn arithmetic, comparison and logical operators.

  • Начальный
  • Чтение: 3 мин
  • Примеров для запуска: 1
Что вы узнаете
  • + - * / and %
  • Integer division
  • &&, || and ++
Expression → result
17 / 53
17 % 52
float64(17) / float64(5)3.4
math.Pow(2, 10)1024

How Go evaluates an expression

Operators combine values into expressions. Go follows the usual math rules, with one thing to remember: dividing two integers drops the fraction.

17 / 5 is 3 because both numbers are integers, and 17 % 5 is the remainder 2. Converting both sides to float64 keeps the fraction. && is true only when both comparisons are true. count++ adds one and is a statement, not an expression.

Главное

  1. int / int drops the fraction: 17 / 5 is 3.
  2. % gives the remainder: 17 % 5 is 2.
  3. Convert to float64 to keep the fraction.

Пример на Go, который можно запустить

Go
Запустить код →
main.go
package main

import (
	"fmt"
	"math"
)

func main() {
	a, b := 17, 5
	fmt.Println(a+b, a-b, a*b)
	fmt.Println(a/b, a%b)
	fmt.Println(float64(a) / float64(b))
	fmt.Println(a > b && b != 0)
	fmt.Println(math.Pow(2, 10), math.Sqrt(144))

	count := 0
	count++
	count += 10
	fmt.Println(count)
}
Получить кнопку запуска для этого примера Результат выполнения
22 12 85
3 2
3.4
true
1024 12
11

Практика

Откройте пример в онлайн-компиляторе, измените значение или добавьте строку и попробуйте предсказать вывод до запуска. Затем намеренно сломайте код и прочитайте сообщение компилятора.

Закончили этот урок?

Отметьте его как изученный, чтобы следить за прогрессом.

Далее: Reading User Input →

Попрактикуйтесь на задаче

Примените материал этого урока к реальной задаче. Каждая задача запускается в браузере, с мгновенными тестами и разбором от ИИ.

Все задачи