Menu
CoddyTech

División entera

Parte de la sección Fundamentos del Journey de GDScript de Coddy. Lección 16 de 92.

Cuando ambos valores de una división son enteros, / da un entero: se descarta la parte decimal.

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

El resultado no se redondea: 7 / 2 es 3, no 4. Con un número negativo también se elimina la parte decimal, así que -7 / 2 es -3.

Cuando al menos un valor es un float, el resultado es un float y conserva su parte decimal:

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

La misma regla se aplica a las variables. Para obtener el resultado exacto de dos variables enteras, convierte una de ellas con float():

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

La división entera es útil para repartir objetos enteros: 7 monedas repartidas entre 2 jugadores dan 3 monedas a cada jugador.

challenge icon

Desafío

Fácil

17 monedas se reparten entre 5 jugadores. Las variables total_coins y players ya están declaradas.

Declara dos variables más:

  • coins_each: el número entero de monedas que recibe cada jugador, usando la división entera de total_coins entre players
  • exact_share: la cantidad exacta como número de punto flotante, usando float() en total_coins antes de dividir

Las líneas de print() ya están ahí y muestran:

Each player gets: 3 coins
Exact share: 3.4

Pruébalo tú mismo

extends Node

func _ready():
	var total_coins := 17
	var players := 5
	# Declara coins_each y exact_share a continuación

	# No cambies las líneas siguientes
	print("Each player gets: ", coins_each, " coins")
	print("Exact share: ", exact_share)
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos

Practica por tu cuenta: Compilador de GDScript online