Menu
Coddy logo textTech

Форматированный вывод

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

Давайте узнаем, как форматировать вывод в Go с помощью функции fmt.Printf(). Эта функция позволяет нам отображать значения в определенных форматах, используя заполнители.

Сначала давайте создадим программу, которая форматирует различные типы данных с помощью заполнителей:

name := "Gopher"
age := 5
height := 1.5
    
fmt.Printf("Name: %s, Age: %d, Height: %.1f\n", name, age, height)

После выполнения этого кода текст "Name: Gopher, Age: 5, Height: 1.5" появится на экране. Заполнители в нашей строке заменяются фактическими значениями наших переменных.

Давайте разберем, что делает каждый заполнитель:

// %s заменяется строковым значением (name)
// %d заменяется целым числом (age)
// %.1f заменяется числом с плавающей точкой с 1 знаком после запятой (height)
// %t заменяется логическим значением (true или false)

Функция fmt.Printf() заменяет каждый заполнитель соответствующей переменной, которую мы указываем после строки форматирования. Порядок переменных должен соответствовать порядку заполнителей.

Теперь давайте попробуем другой пример с различными типами форматирования:

pi := 3.14159
percentage := 0.75
letter := 'A'

fmt.Printf("Pi: %.2f, Percentage: %.1f%%, Letter: %c\n", pi, percentage*100, letter)

После выполнения этого кода на экране появится текст "Pi: 3.14, Percentage: 75.0%, Letter: A". Обратите внимание, как %.2f отображает только 2 знака после запятой для числа пи, и мы умножаем процент на 100, чтобы показать его как процентное значение.

Также обратите внимание на специальную последовательность %% в строке форматирования — именно так выводится литеральный символ % с помощью fmt.Printf(). Одиночный символ % будет рассматриваться как начало заполнителя, поэтому %% используется для его экранирования и отображения самого знака процента.

challenge icon

Задание

Легко

В этом испытании вы попрактикуетесь в использовании форматированного вывода в Go с помощью функции `fmt.Printf()`.

У вас есть информация о продукте, которую необходимо отобразить в определенном формате, используя глаголы форматирования (format verbs). Переменные уже определены за вас.

Ваша задача — использовать `fmt.Printf()` с соответствующими глаголами форматирования для отображения информации о продукте:
- Используйте `%s` для строк
- Используйте `%d` для целых чисел  
- Используйте `%.2f` для чисел с плавающей запятой с 2 знаками после запятой
- Используйте `%t` для логических (boolean) значений

Отобразите информацию о продукте точно так, как показано в ожидаемом выводе.

Шпаргалка

Используйте fmt.Printf() для форматирования вывода с использованием заполнителей:

fmt.Printf("Name: %s, Age: %d, Height: %.1f\n", name, age, height)

Общие спецификаторы формата:

  • %s — строковое значение
  • %d — целое число
  • %.1f — число с плавающей точкой с 1 знаком после запятой
  • %.2f — число с плавающей точкой с 2 знаками после запятой
  • %t — логическое значение (boolean)
  • %c — символ
  • %% — литерал знака процента (%)

Порядок переменных должен соответствовать порядку заполнителей в строке формата.

Используйте \n в конце строки формата, чтобы перейти на новую строку после вывода.

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

package main

import "fmt"

func main() {
	// Информация о продукте
	productName := "Wireless Headphones"
	productPrice := 79.99
	productInStock := true
	productID := 12345
	
    // TODO: Используйте fmt.Printf() со спецификаторами формата для отображения информации о продукте:
    // Product: Wireless Headphones (ID: 12345)
    // Price: $79.99
    // In Stock: true
    //
    // Подсказка: используйте %s для строк, %d для целых чисел, %.2f для чисел с плавающей точкой, %t для логических значений
    // Не забудьте добавить \n в конце каждой строки для правильного форматирования
	
	
}
quiz iconПроверьте себя

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

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