Go – Rellenar número con ceros

Hoy te mostraré algo muy sencillo en Go: cómo agregar ceros a la izquierda de un número. En este caso te enseñaré a agregar un cero a la izquierda solo si el número tiene un dígito, en caso de que no, no se agrega.

En otras palabras, agregar un 0 si el número es menor a 10. Aunque no solo funcionará con números de 2 dígitos, funcionará con cualquier cantidad de dígitos para rellenarlos con 0 o ceros.

Rellenar con ceros en go

Para hacer esto podemos usar los formatos de cadena que están en fmt, específicamente con fmt.Printf y fmt.Sprintf.

Por si no lo recuerdas, fmt.Printf imprime directamente la cadena con formato, y fmt.Sprintf devuelve la cadena formateada.

Pero bueno, el formato es:

%02d

En donde el 2 es la cantidad de dígitos que quieres, y si el número no tiene esa cantidad de dígitos entonces se le va a agregar lo faltante en ceros.

Función para agregar cero a la izquierda

Ahora veamos la función que he creado. En este caso agregará el cero si el número es menor que 10.

func agregarCeroSiEsNecesario(valor int) string {
	return fmt.Sprintf("%02d", valor)
}

Por poner otro ejemplo, si quieres que agregue los ceros suficientes para rellenar al menos 3 dígitos harías esto:

func agregarCeroSiEsNecesario(valor int) string {
	return fmt.Sprintf("%03d", valor)
}

Y en ese caso, por ejemplo, el 9 se convierte en 009, el 10 en 010 y el 100 se queda intacto. A partir de este ejemplo ya puedes saber cómo agregar ceros a la izquierda con Go, sin importar la cantidad de dígitos.

Poniendo todo junto

El código completo junto con algunas llamadas a la función queda así:

package main

import "fmt"

func agregarCeroSiEsNecesario(valor int) string {
	return fmt.Sprintf("%02d", valor)
}

func main() {
  fmt.Println(agregarCeroSiEsNecesario(9))
  fmt.Println(agregarCeroSiEsNecesario(10))
  fmt.Println(agregarCeroSiEsNecesario(100))
}

Por acá te dejo más posts sobre Go.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *