Menu
CoddyTech

Целочисленное деление

Часть раздела Основы путешествия по GDScript на Coddy. Урок 16 из 92.

Когда оба значения в делении — целые числа, / возвращает целое число: десятичная часть отбрасывается.

print(7 / 2) # 3
print(10 / 3) # 3

Результат не округляется: 7 / 2 — это 3, а не 4. Для отрицательного числа десятичная часть тоже отбрасывается, поэтому -7 / 2 — это -3.

Если хотя бы одно значение — float, результат будет числом с плавающей точкой и сохранит дробную часть:

print(7.0 / 2) # 3.5
print(7 / 2.0) # 3.5

То же правило применяется к переменным. Чтобы получить точный результат при делении двух целочисленных переменных, преобразуй одну из них с помощью float():

var coins := 7
var players := 2
print(coins / players) # 3
print(float(coins) / players) # 3.5

Целочисленное деление полезно для подсчёта целых предметов: если разделить 7 монет между 2 игроками, каждый игрок получит 3 монеты.

challenge icon

Задание

Легко

17 монет делят между 5 игроками. Переменные total_coins и players уже объявлены.

Объяви ещё две переменные:

  • coins_each: целое число монет, которое получает каждый игрок, используя целочисленное деление total_coins на players
  • exact_share: точная доля в виде числа с плавающей точкой, используя float() для total_coins перед делением

Строки с print() уже есть и выводят:

Each player gets: 3 coins
Exact share: 3.4

Попробуйте сами

extends Node

func _ready():
	var total_coins := 17
	var players := 5
	# Объявите coins_each и exact_share ниже

	# Не изменяйте строки ниже
	print("Each player gets: ", coins_each, " coins")
	print("Exact share: ", exact_share)
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Онлайн-компилятор GDScript