Menu
CoddyTech

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

Часть раздела Основы путешествия по 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 заменяется строковым значением (именем)
// %d заменяется целочисленным значением (возрастом)
// %.1f заменяется числом с плавающей точкой с 1 знаком после запятой (ростом)
// %t заменяется логическим значением (true или false)
// %c заменяется одним символом (руной, например 'A')

\n в конце строки формата — это управляющий символ, который перемещает курсор на новую строку, как при нажатии Enter. Он должен находиться внутри кавычек без пробела перед закрывающей кавычкой, иначе в выводе появятся лишние пробелы.

Функция 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, чтобы отобразить его в процентах.

Также обрати внимание на %% в строке формата. Это специальная escape-последовательность, которая выводит буквальный знак %. Один символ % воспринимался бы как начало заполнителя, поэтому мы используем %%, когда хотим вывести в результате настоящий знак процента.

challenge icon

Задание

Легко

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

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

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

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

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

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Проверьте себя

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

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

Потренируйтесь самостоятельно: Онлайн-компилятор Go