Целочисленное деление
Часть раздела Основы путешествия по 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 монеты.
Задание
Легко17 монет делят между 5 игроками. Переменные total_coins и players уже объявлены.
Объяви ещё две переменные:
coins_each: целое число монет, которое получает каждый игрок, используя целочисленное делениеtotal_coinsнаplayersexact_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)
В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
4Операторы. Часть 1
Арифметические операторыЦелочисленное делениеОператор остатка от деленияСокращённая запись арифметических операцийПовторение — простая математикаОператоры сравнения7Основы ввода и вывода
ВыводВывод с переменнымиФорматирование строкВводПреобразование типовПовторение — до 120Повторение — истина или ложь5Операторы, часть 2
Логические операторы, часть 1Логические операторы, часть 2Повторение: простая логикаЛогические операторы, часть 3Тернарный оператор8Калькулятор для разделения счёта
Приветственное сообщениеВвод данных11FizzBuzz с неожиданным поворотом
Обзор игрыФункция FizzBuzz14Массивы: продвинутый уровень
Срезы массивовОператоры последовательностейПринадлежностьСортировка и обратный порядок3Переменные. Часть 2
Объявление типаВывод типаКонстантыПовторение — инициализация переменныхПреобразование типов6Принятие решений
Оператор ifЕсли — иначеПовторение: простой калькуляторВложенные условия if — elseОператор match9Циклы
Цикл forЦикл whileBreakContinueПовторение — факториалФункция rangeВложенный циклПовторение — динамический вводПотренируйтесь самостоятельно: Онлайн-компилятор GDScript