Saisie utilisateur de base
Fait partie de la section Fondamentaux du Journey GO de Coddy — leçon 32 sur 109.
Apprenons comment obtenir une saisie utilisateur de base en Go. Nous allons créer un programme simple qui demande un nom et un âge, puis affiche un message de salutation.
Tout d'abord, configurons des variables pour stocker le nom et l'âge de l'utilisateur :
var name string
var age intCes variables contiendront les informations que l'utilisateur saisit. Le type string est destiné au texte, et int est destiné aux nombres entiers.
Ensuite, demandons à l'utilisateur son nom :
fmt.Print("Enter your name: ")
fmt.Scan(&name)Après l'exécution de ce code, le texte « Enter your name: » s'affichera à l'écran. Le programme attendra ensuite que l'utilisateur saisisse quelque chose et appuie sur Entrée.
Tout ce qu'ils saisiront sera stocké dans la variable name. Le symbole & indique à Go où stocker la saisie.
Maintenant, demandons l'âge de l'utilisateur :
fmt.Print("Enter your age: ")
fmt.Scan(&age)Tout comme à l'étape précédente, "Enter your age:" s'affichera à l'écran, et le programme attendra que l'utilisateur saisisse un nombre. Ce nombre sera stocké dans la variable age.
Enfin, affichons un message d'accueil en utilisant les informations que nous avons collectées :
fmt.Printf("Hello %s, you are %d years old!\n", name, age)Après l'exécution de ce code, un message personnalisé s'affichera à l'écran.
Par exemple, lorsque vous exécutez ce programme et saisissez « Gopher » et « 5 », vous verrez :
Enter your name: Gopher
Enter your age: 5
Hello Gopher, you are 5 years old!Défi
DébutantDans ce défi, vous allez vous entraîner à obtenir une saisie utilisateur de base en Go. Vous utiliserez la fonction fmt.Scanln() pour lire la saisie de l'utilisateur et la stocker dans une variable.
Votre tâche consiste à compléter le programme qui demande son nom à l'utilisateur, puis le salue.
Remarque : Ce défi utilise des variables prédéfinies au lieu d'une saisie utilisateur.
Aide-mémoire
Pour obtenir une saisie utilisateur en Go, déclarez des variables et utilisez 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)Le symbole & indique à Go où stocker la saisie. Utilisez le type string pour le texte et int pour les nombres entiers.
Essayez vous-même
package main
import "fmt"
func main() {
// Déclarer une variable pour stocker le nom de l'utilisateur
var name string
// Afficher une invite pour l'utilisateur
fmt.Print("Enter your name: ")
// TODO: Utiliser fmt.Scanln() pour lire la saisie de l'utilisateur dans la variable 'name'
// Afficher un message d'accueil en utilisant le nom saisi
fmt.Printf("Hello, %s! Nice to meet you.", name)
}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
4Opérateurs de comparaison et logiques
Opérateurs de comparaison - Partie 1Opérateurs de comparaison - Partie 2Opérateur logique ANDOpérateur logique OROpérateur logique NOTBases de la priorité des opérateursRécapitulatif - Effectuer des comparaisons7Structures de contrôle : Les boucles
Explication de la boucle `for`Boucle For - Les basesBoucle For - Condition uniquementLe mot-clé `break`Le mot-clé `continue`Boucles imbriquéesRécapitulatif - Répéter des actions2Variables et types de données de base
Qu'est-ce qu'une variableInférence de type avec `:=` Entiers (int)Nombres à virgule flottanteBooléensChaînes de caractères (Strings)Valeurs zéroConstantesConventions de nommageRécapitulatif - Variables et types5Entrées/Sorties de base
Sortie formatéeVerbes de formatageAffichage des typesSaisie utilisateur de baseRécapitulatif - Entrées et Sorties8Fonctions
Comprendre les fonctionsDéclarer une fonctionAppeler des fonctionsParamètres de fonctionRetourner une valeur uniqueRetourner plusieurs valeursValeurs de retour nomméesBases de la portée des fonctionsRécapitulatif - Créer du code réutilisable11Types composites : Slices
Introduction aux SlicesDéclaration de littéraux de SlicesCréation de Slices avec `make`Longueur vs Capacité des SlicesAccès aux éléments d'un SliceAjout d'élémentsDécoupage de Slices/Tableaux existantsItération sur les SlicesCopie de SlicesRécapitulatif - Listes dynamiques3Opérateurs de base
Opérateurs arithmétiquesOpérateur de divisionL'opérateur moduloOpérateur d'affectationOpérateurs d'affectation augmentéeIncrémentation et décrémentationRécapitulatif - Calculs6Structure de contrôle : Les conditionnelles
L'instruction `if`Le mot-clé `else`Le mot-clé `else if`Masquage de variable dans `if`Initialisation des variablesL'instruction `switch``switch` avec expressions`switch` sans expressionLe mot-clé `fallthrough`Récapitulatif - Prendre des décisions9Pointeurs
Qu'est-ce qu'un pointeur ?Déclaration de variables pointeursL'opérateur d'adresseDéréférencement de pointeursUtiliser des pointeurs dans les fonctionsPointeurs NilRécapitulatif - Comprendre les pointeurs12Types composites : Maps
Introduction aux MapsDéclaration de littéraux de MapCréation de Maps avec `make`Ajout et mise à jour de paires clé-valeurAccès aux valeurs d'une MapVérification de l'existence d'une cléSuppression d'entrées de MapTaille d'une MapItération sur les MapsRécapitulatif - Stockage clé-valeur