Menu
Coddy logo textTech

Output formattato

Fa parte della sezione Fondamenti del percorso GO di Coddy. Lezione 29 di 109.

Impariamo a formattare il nostro output in Go usando la funzione fmt.Printf(). Questa funzione ci permette di visualizzare i valori in formati specifici usando segnaposto.

Per prima cosa, creiamo un programma che formatta diversi tipi di dati usando segnaposto:

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

Dopo aver eseguito questo codice, sullo schermo verrà visualizzato il testo "Name: Gopher, Age: 5, Height: 1.5". I segnaposto nella nostra stringa vengono sostituiti con i valori effettivi delle nostre variabili.

Vediamo cosa fa ciascun segnaposto:

// %s viene sostituito con un valore stringa (name)
// %d viene sostituito con un valore intero (age)
// %.1f viene sostituito con un valore a virgola mobile con 1 cifra decimale (height)
// %t viene sostituito con un valore booleano (true o false)

Il \n alla fine di una stringa di formato è un carattere di escape che sposta il cursore su una nuova riga, proprio come premere Invio. Deve comparire tra virgolette senza spazi prima della virgoletta di chiusura, altrimenti nell'output compariranno spazi extra.

La funzione fmt.Printf() sostituisce ogni segnaposto con la variabile corrispondente che forniamo dopo la stringa di formato. L'ordine delle variabili deve corrispondere all'ordine dei segnaposto.

Ora proviamo un altro esempio con diversi tipi di formattazione:

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

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

Dopo aver eseguito questo codice, sullo schermo apparirà il testo "Pi: 3.14, Percentage: 75.0%, Letter: A". Nota come %.2f mostri solo 2 cifre decimali per pi e come moltiplichiamo la percentuale per 100 per mostrarla come valore percentuale.

Nota anche %% nella stringa di formato. Questa è una sequenza di escape speciale che stampa un segno % letterale. Un singolo % verrebbe interpretato come l'inizio di un segnaposto, quindi usiamo %% ogni volta che vogliamo visualizzare un simbolo di percentuale effettivo nell'output.

challenge icon

Sfida

Facile

In questa sfida, ti eserciterai a usare l’output formattato in Go con la funzione `fmt.Printf()`.

Hai a disposizione le informazioni su un prodotto che devono essere visualizzate in un formato specifico usando i verbi di formattazione. Le variabili sono già definite.

Il tuo compito è usare `fmt.Printf()` con i verbi di formattazione appropriati per visualizzare le informazioni sul prodotto:
- Usa `%s` per le stringhe
- Usa `%d` per gli interi  
- Usa `%.2f` per i numeri in virgola mobile con 2 cifre decimali
- Usa `%t` per i valori booleani

Visualizza le informazioni sul prodotto esattamente come mostrato nell’output previsto.

Provalo tu

package main

import "fmt"

func main() {
	// Informazioni sul prodotto
	productName := "Wireless Headphones"
	productPrice := 79.99
	productInStock := true
	productID := 12345
	
    // TODO: Usa fmt.Printf() con i verbi di formato per visualizzare le informazioni sul prodotto:
    // Product: Wireless Headphones (ID: 12345)
    // Price: $79.99
    // In Stock: true
    //
    // Suggerimento: usa %s per le stringhe, %d per gli interi, %.2f per i numeri in virgola mobile, %t per i booleani
    // Ricorda di aggiungere \n alla fine di ogni riga per una formattazione corretta
	
	
}
quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Fondamenti

Esercitati da solo: Compilatore Go online