Menu
CoddyTech

Sortie formatée

Fait partie de la section Fondamentaux du Journey GO de Coddy. Leçon 29 sur 109.

Apprenons à formater notre sortie en Go à l’aide de la fonction fmt.Printf(). Cette fonction nous permet d’afficher des valeurs dans des formats spécifiques à l’aide d’espaces réservés.

Commençons par créer un programme qui formate différents types de données à l’aide d’espaces réservés :

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

Après l’exécution de ce code, le texte "Name: Gopher, Age: 5, Height: 1.5" s’affichera à l’écran. Les espaces réservés dans notre chaîne sont remplacés par les valeurs réelles de nos variables.

Comprenons le rôle de chaque spécificateur de format :

// %s est remplacé par une chaîne de caractères (name)
// %d est remplacé par un entier (age)
// %.1f est remplacé par un nombre à virgule flottante affiché avec 1 décimale (height)
// %t est remplacé par une valeur booléenne (true ou false)
// %c est remplacé par un seul caractère (une rune comme 'A')

Le \n à la fin d’une chaîne de format est un caractère d’échappement qui déplace le curseur à la ligne suivante, tout comme si tu appuyais sur Entrée. Il doit apparaître à l’intérieur des guillemets, sans espace avant le guillemet fermant, sinon des espaces supplémentaires apparaîtront dans ta sortie.

La fonction fmt.Printf() remplace chaque espace réservé par la variable correspondante que nous fournissons après la chaîne de format. L’ordre des variables doit correspondre à celui des espaces réservés.

Essayons maintenant un autre exemple avec différents types de formatage :

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

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

Après l’exécution de ce code, le texte "Pi: 3.14, Percentage: 75.0%, Letter: A" s’affichera à l’écran. Remarque que %.2f n’affiche que 2 décimales pour pi, et que nous multiplions le pourcentage par 100 pour l’afficher sous forme de pourcentage.

Remarque également le %% dans la chaîne de format. Il s’agit d’une séquence d’échappement spéciale qui affiche un signe % littéral. Un seul % serait interprété comme le début d’un espace réservé ; nous utilisons donc %% chaque fois que nous voulons afficher un véritable symbole de pourcentage dans la sortie.

challenge icon

Défi

Facile

Dans ce défi, tu vas t’entraîner à utiliser la sortie formatée en Go avec la fonction `fmt.Printf()`.

Tu disposes des informations sur un produit qui doivent être affichées dans un format précis à l’aide de verbes de formatage. Les variables sont déjà définies pour toi.

Ta tâche consiste à utiliser `fmt.Printf()` avec les verbes de formatage appropriés pour afficher les informations sur le produit :
- Utilise `%s` pour les chaînes de caractères
- Utilise `%d` pour les entiers  
- Utilise `%.2f` pour les nombres à virgule flottante avec 2 décimales
- Utilise `%t` pour les valeurs booléennes

Affiche les informations sur le produit exactement comme indiqué dans la sortie attendue.

Essayez vous-même

package main

import "fmt"

func main() {
	// Informations sur le produit
	productName := "Wireless Headphones"
	productPrice := 79.99
	productInStock := true
	productID := 12345
	
    // TODO: Utilisez fmt.Printf() avec des spécificateurs de format pour afficher les informations sur le produit :
    // Product: Wireless Headphones (ID: 12345)
    // Price: $79.99
    // In Stock: true
    //
    // Astuce : Utilisez %s pour les chaînes de caractères, %d pour les entiers, %.2f pour les nombres à virgule flottante, %t pour les booléens
    // N'oubliez pas d'ajouter \n à la fin de chaque ligne pour une mise en forme correcte
	
	
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux

Entraînez-vous par vous-même : Compilateur Go en ligne