Avatar ·

Cómo leer la entrada del teclado (entrada estándar) en la consola en Go?

Acabo de empezar a aprender Go y tengo un problema simple pero importante. Necesito escribir un programa que solicite al usuario su nombre y edad, y luego muestre un saludo. Pero no puedo entender cómo leer correctamente una cadena o un número desde la consola. En otros lenguajes (por ejemplo, Python) simplemente usaba `input()`, y en C++ — `cin`. En Go veo muchas formas: `bufio`, `fmt.Scan`, `os.Stdin`, y esto me confunde. Probé la opción más obvia: ```go package main import "fmt" func main() { var name string fmt.Print("Ingrese su nombre: ") fmt.Scan(&name) fmt.Println("Hola,", name) } ``` Pero cuando ingreso "Iván Ivanov", el programa solo imprime "Hola, Iván", y la segunda palabra se pierde. Tampoco entiendo cómo leer un número y manejar errores si el usuario ingresa letras en lugar de dígitos. Por favor, indíqueme cómo leer datos de la entrada estándar en Go de manera correcta y confiable. Necesito ejemplos para cadenas (con espacios) y para números.