Menu
Coddy logo textTech

Базовый ввод данных пользователем

Часть раздела Основы путешествия по GO на Coddy — урок 32 из 109.

Давайте узнаем, как получать базовый пользовательский ввод в Go. Мы создадим простую программу, которая запрашивает имя и возраст, а затем выводит приветствие.

Сначала давайте создадим переменные для хранения имени и возраста пользователя:

var name string
var age int

Эти переменные будут хранить информацию, которую вводит пользователь. Тип string предназначен для текста, а int — для целых чисел.

Затем давайте спросим у пользователя его имя:

fmt.Print("Enter your name: ")
fmt.Scan(&name)

После выполнения этого кода на экране появится текст "Enter your name:". Затем программа будет ждать, пока пользователь что-нибудь введет и нажмет Enter.

Все, что они введут, будет сохранено в переменной name. Символ & указывает Go, куда сохранить ввод.

Теперь давайте спросим возраст пользователя:

fmt.Print("Enter your age: ")
fmt.Scan(&age)

Аналогично предыдущему шагу, на экране появится "Enter your age:", и программа будет ждать, пока пользователь введет число. Это число будет сохранено в переменной age.

Наконец, давайте выведем приветствие, используя собранную информацию:

fmt.Printf("Hello %s, you are %d years old!\n", name, age)

После выполнения этого кода на экране появится персонализированное сообщение.

Например, когда вы запустите эту программу и введете «Gopher» и «5», вы увидите:

Enter your name: Gopher
Enter your age: 5
Hello Gopher, you are 5 years old!
challenge icon

Задание

Новичок

В этом испытании вы попрактикуетесь в получении базового пользовательского ввода в Go. Вы будете использовать функцию fmt.Scanln() для чтения ввода от пользователя и сохранения его в переменной.

Ваша задача — завершить программу, которая запрашивает у пользователя его имя, а затем приветствует его.

Примечание: В этом испытании используются предопределенные переменные вместо пользовательского ввода.

Шпаргалка

Чтобы получить ввод пользователя в Go, объявите переменные и используйте fmt.Scan():

var name string
var age int

fmt.Print("Enter your name: ")
fmt.Scan(&name)

fmt.Print("Enter your age: ")
fmt.Scan(&age)

fmt.Printf("Hello %s, you are %d years old!\n", name, age)

Символ & указывает Go, где сохранить ввод. Используйте тип string для текста и int для целых чисел.

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

package main

import "fmt"

func main() {
	// Объявить переменную для хранения имени пользователя
	var name string
	
	// Вывести подсказку для пользователя
	fmt.Print("Enter your name: ")
	
	// TODO: Используйте fmt.Scanln() для чтения ввода пользователя в переменную 'name'
	
	// Вывести приветствие, используя введенное имя
	fmt.Printf("Hello, %s! Nice to meet you.", name)
}
quiz iconПроверьте себя

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

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

5Основы ввода-вывода

Форматированный выводСпецификаторы форматаВывод типовБазовый ввод данных пользователемИтоги: ввод и вывод