Exercice - Écrire du code pour lire et enregistrer les nouvelles données du tableau de nos animaux.
Dans cet exercice, vous développez les boucles de validation d’entrée de données pour chaque caractéristique d’un animal, puis vous stockez les nouvelles données du tableau ourAnimals. Les tâches détaillées que vous effectuez pendant cet exercice sont les suivantes :
- Lire et valider les espèces : créez une boucle et la structure de code interne utilisée pour entrer et valider les espèces d’animaux de compagnie.
- Construire un ID d’animal de compagnie : écrivez le code qui utilise petCount et le nom de l’espèce pour construire la valeur petID.
- Lire et valider l’âge : créez une boucle et la structure de code interne utilisée pour entrer et valider l’âge de l’animal.
- Lire et valider la description physique : créez une boucle et la structure de code interne utilisée pour entrer une description physique de l’animal.
- Lire et valider la description de la personnalité : créez une boucle et la structure de code interne utilisée pour entrer une description de la personnalité de l’animal.
- Lire et valider le surnom : créez une boucle et la structure de code interne utilisée pour entrer un surnom pour l’animal.
- Test de vérification : effectuez des tests de vérification pour le code que vous développez dans cet exercice.
Important
Vous devez effectuer l’exercice précédent dans ce module avant de commencer cet exercice.
Construire une boucle pour lire et valider les espèces d'animaux
Dans cette tâche, vous créez une do boucle qui itère jusqu’à ce que l’utilisateur entre un nom d’espèce valide, qu’il s’agisse d’un chien ou d’un chat. Vous réutilisez votre chaîne voidable readResult pour capturer l’entrée de Console.ReadLine(). Vous réutilisez également la animalSpecies variable de chaîne que vous avez utilisée lors de la génération de vos exemples de données. Vous ajoutez une nouvelle variable booléenne nommée validEntry à votre application. Vous utilisez validEntry dans une expression évaluée comme critère de sortie pour votre do boucle.
Vérifiez que Visual Studio Code est ouvert et que votre fichier Program.cs est visible dans l’éditeur.
Recherchez l’instruction
while (anotherPet == "y" && petCount < maxPets), puis ajoutez une ligne de code vide au bloc de code supérieur.Sur la ligne de code vide que vous avez créée, pour déclarer
validEntryavec une valeur initiale defalse, entrez le code suivant :bool validEntry = false;Sur la ligne sous la déclaration de
validEntry, pour créer une boucle pour l'entrée des données des espècesdo, entrez le code suivant :// get species (cat or dog) - string animalSpecies is a required field do { } while (validEntry == false);Dans le bloc de code de votre
doinstruction, pour créer une invite d’affichage et lire l’entrée utilisateur, entrez le code suivant :Console.WriteLine("\n\rEnter 'dog' or 'cat' to begin a new entry"); readResult = Console.ReadLine();Pour vous assurer que la valeur de
readResultn’est PAS null avant d’affecter la valeur àreadResultanimalSpecies, entrez le code suivant :if (readResult != null) { animalSpecies = readResult.ToLower(); }Sur la ligne en dessous de l'affectation de la valeur
animalSpecies, afin de vous assurer queanimalSpeciescontient un nom d’espèce valide, entrez le code suivant :if (animalSpecies != "dog" && animalSpecies != "cat") { validEntry = false; } else { validEntry = true; }Comparez votre boucle d’entrée de données de nom d’espèce terminée avec le code suivant :
// get species (cat or dog) - string animalSpecies is a required field do { Console.WriteLine("\n\rEnter 'dog' or 'cat' to begin a new entry"); readResult = Console.ReadLine(); if (readResult != null) { animalSpecies = readResult.ToLower(); if (animalSpecies != "dog" && animalSpecies != "cat") { //Console.WriteLine($"You entered: {animalSpecies}."); validEntry = false; } else { validEntry = true; } } } while (validEntry == false);Dans le menu Fichier de Visual Studio Code, sélectionnez Enregistrer.
Ouvrez le panneau Terminal intégré dans Visual Studio Code et entrez la commande pour générer votre programme.
Si des erreurs de build ou des avertissements ont été signalés, corrigez les problèmes avant de continuer.
Construire la valeur de l’ID d’animal
Dans cette tâche, vous utilisez les variables animalSpecies et petCount pour créer la valeur que vous affectez à animalID.
Ajoutez une ligne de code vide sous le bloc de code de votre boucle d’entrée de données de nom d’espèce.
Pour créer et affecter la
animalIDvaleur, entrez le code suivant :// build the animal the ID number - for example C1, C2, D3 (for Cat 1, Cat 2, Dog 3) animalID = animalSpecies.Substring(0, 1) + (petCount + 1).ToString();Dans le menu Fichier de Visual Studio Code, sélectionnez Enregistrer.
Construire une boucle pour lire et valider l'âge de l'animal
Dans cette tâche, vous créez une do boucle qui itère jusqu’à ce que l’utilisateur entre soit un ? entier valide qui représente l’âge de l’animal en années. Vous réutilisez la chaîne annulable readResult pour capturer l'entrée Console.ReadLine(). Vous réutilisez également la animalAge variable de chaîne que vous avez utilisée lors de la génération des exemples de données. Pour tester si la animalAge chaîne représente ou non un entier valide, vous utilisez la validEntry valeur booléenne. Vous déclarez une nouvelle variable entière nommée petAge pour stocker la valeur numérique. Une fois de plus, la validEntry valeur booléenne est utilisée dans l’expression évaluée comme critère de sortie pour notre do boucle.
Ajoutez une ligne de code vide sous la ligne utilisée pour affecter une valeur à notre
animalIDvariable.Pour créer une
doboucle pour l’entrée de données d’âge, entrez le code suivant :// get the pet's age. can be ? at initial entry. do { } while (validEntry == false);Dans le bloc de code de votre
doinstruction, pour déclarer une variable entière nomméepetAge, entrez le code suivant :int petAge;Sur la ligne sous la déclaration de
petAge, pour afficher un message d'invite et lire l’entrée de l’utilisateur, entrez le code suivant :Console.WriteLine("Enter the pet's age or enter ? if unknown"); readResult = Console.ReadLine();Pour vous assurer que la valeur de
readResultn’est pas null avant d’affecter la valeur àreadResultanimalAge, entrez le code suivant :if (readResult != null) { animalAge = readResult; }Sur la ligne sous l’attribution
animalAgede valeur, pour vérifier si l’utilisateur a entré?avant de tester un entier valide, entrez le code suivant :if (animalAge != "?") { validEntry = int.TryParse(animalAge, out petAge); } else { validEntry = true; }Comparez votre boucle d’entrée de données d’âge terminée avec le code suivant :
// get the pet's age. can be ? at initial entry. do { int petAge; Console.WriteLine("Enter the pet's age or enter ? if unknown"); readResult = Console.ReadLine(); if (readResult != null) { animalAge = readResult; if (animalAge != "?") { validEntry = int.TryParse(animalAge, out petAge); } else { validEntry = true; } } } while (validEntry == false);Dans le menu Fichier de Visual Studio Code, sélectionnez Enregistrer.
Ouvrez le panneau Terminal intégré dans Visual Studio Code et entrez la commande pour générer votre programme.
Si des erreurs de build ou des avertissements ont été signalés, corrigez les problèmes avant de continuer.
Construire une boucle pour lire et valider la description physique de l’animal
Dans cette tâche, vous créez une do boucle qui itère jusqu’à ce que l’utilisateur entre une valeur de chaîne qui représente une description physique d’un animal de compagnie. Vous réutilisez la chaîne annulable readResult pour capturer l'entrée Console.ReadLine(). Vous réutilisez également la animalPhysicalDescription variable de chaîne que vous avez utilisée lors de la génération des exemples de données. Vous utilisez la valeur affectée à animalPhysicalDescription dans l’expression évaluée en tant que critère de sortie pour notre boucle do.
Ajoutez une ligne de code vide sous le bloc de code de votre boucle d’entrée de données d’âge.
Pour créer une
doboucle pour l’entrée de données de description physique, entrez le code suivant :// get a description of the pet's physical appearance/condition - animalPhysicalDescription can be blank. do { } while (animalPhysicalDescription == "");Dans le bloc de code de votre
doinstruction, pour créer une invite d’affichage et lire l’entrée utilisateur, entrez le code suivant :Console.WriteLine("Enter a physical description of the pet (size, color, gender, weight, housebroken)"); readResult = Console.ReadLine();Pour vous assurer que la valeur de
readResultn’est pas null avant d’affecter la valeur àreadResultanimalPhysicalDescription, entrez le code suivant :if (readResult != null) { animalPhysicalDescription = readResult.ToLower(); }Pour affecter une valeur
"tbd"àanimalPhysicalDescriptionquand la valeur entrée est"", entrez le code suivant :if (animalPhysicalDescription == "") { animalPhysicalDescription = "tbd"; }Comparez votre boucle d’entrée de données de description physique terminée avec le code suivant :
// get a description of the pet's physical appearance/condition - animalPhysicalDescription can be blank. do { Console.WriteLine("Enter a physical description of the pet (size, color, gender, weight, housebroken)"); readResult = Console.ReadLine(); if (readResult != null) { animalPhysicalDescription = readResult.ToLower(); if (animalPhysicalDescription == "") { animalPhysicalDescription = "tbd"; } } } while (animalPhysicalDescription == "");Dans le menu Fichier de Visual Studio Code, sélectionnez Enregistrer.
Ouvrez le panneau Terminal intégré dans Visual Studio Code et entrez la commande pour générer votre programme.
Si des erreurs de build ou des avertissements ont été signalés, corrigez les problèmes avant de continuer.
Construire une boucle pour lire et valider la description de la personnalité de l'animal de compagnie
Dans cette tâche, vous créez une do boucle qui itère jusqu’à ce que l’utilisateur entre une valeur de chaîne qui représente une description de la personnalité d’un animal. Vous réutilisez la chaîne annulable readResult pour capturer l'entrée Console.ReadLine(). Vous réutilisez également la animalPersonalityDescription variable de chaîne que vous avez utilisée lors de la génération des exemples de données. Vous utilisez la valeur affectée à animalPersonalityDescription dans l’expression évaluée en tant que critère de sortie pour notre boucle do.
Ajoutez une ligne de code vide sous le bloc de code de votre boucle d’entrée de données de description physique.
Pour créer une
doboucle pour l’entrée de données de description de la personnalité, entrez le code suivant :// get a description of the pet's personality - animalPersonalityDescription can be blank. do { } while (animalPersonalityDescription == "");Dans le bloc de code de votre
doinstruction, pour créer une invite d’affichage et lire l’entrée utilisateur, entrez le code suivant :Console.WriteLine("Enter a description of the pet's personality (likes or dislikes, tricks, energy level)"); readResult = Console.ReadLine();Pour vous assurer que la valeur de
readResultn’est pas null avant d’affecter la valeur àreadResultanimalPersonalityDescription, entrez le code suivant :if (readResult != null) { animalPersonalityDescription = readResult.ToLower(); }Pour affecter une valeur
"tbd"àanimalPersonalityDescriptionquand la valeur entrée est"", entrez le code suivant :if (animalPersonalityDescription == "") { animalPersonalityDescription = "tbd"; }Comparez votre boucle d’entrée de données de description de personnalité terminée avec le code suivant :
// get a description of the pet's personality - animalPersonalityDescription can be blank. do { Console.WriteLine("Enter a description of the pet's personality (likes or dislikes, tricks, energy level)"); readResult = Console.ReadLine(); if (readResult != null) { animalPersonalityDescription = readResult.ToLower(); if (animalPersonalityDescription == "") { animalPersonalityDescription = "tbd"; } } } while (animalPersonalityDescription == "");Dans le menu Fichier de Visual Studio Code, sélectionnez Enregistrer.
Ouvrez le panneau Terminal intégré dans Visual Studio Code et entrez la commande pour générer votre programme.
Si des erreurs de build ou des avertissements ont été signalés, corrigez les problèmes avant de continuer.
Créer une boucle pour lire et valider le surnom de l’animal
Dans cette tâche, vous créez une do boucle qui itère jusqu’à ce que l’utilisateur entre une valeur de chaîne qui représente un surnom pour un animal de compagnie. Vous réutilisez la chaîne annulable readResult pour capturer l'entrée Console.ReadLine(). Vous réutilisez également la animalNickname variable de chaîne que vous avez utilisée lors de la génération des exemples de données. Vous utilisez la valeur affectée à animalNickname dans l’expression évaluée en tant que critère de sortie pour notre boucle do.
Ajoutez une ligne de code vide sous le bloc de code de votre boucle d’entrée de données de description de la personnalité.
Pour créer une
doboucle pour l’entrée de données de description de la personnalité, entrez le code suivant :// get the pet's nickname. animalNickname can be blank. do { } while (animalNickname == "");Dans le bloc de code de votre
doinstruction, pour créer une invite d’affichage et lire l’entrée utilisateur, entrez le code suivant :Console.WriteLine("Enter a nickname for the pet"); readResult = Console.ReadLine();Pour vous assurer que la valeur de
readResultn’est pas null avant d’affecter la valeur àreadResultanimalNickname, entrez le code suivant :if (readResult != null) { animalNickname = readResult.ToLower(); }Pour affecter une valeur
"tbd"àanimalNicknamequand la valeur entrée est"", entrez le code suivant :if (animalNickname == "") { animalNickname = "tbd"; }Comparez votre boucle d’entrée de données de surnom terminée avec le code suivant :
// get the pet's nickname. animalNickname can be blank. do { Console.WriteLine("Enter a nickname for the pet"); readResult = Console.ReadLine(); if (readResult != null) { animalNickname = readResult.ToLower(); if (animalNickname == "") { animalNickname = "tbd"; } } } while (animalNickname == "");Dans le menu Fichier de Visual Studio Code, sélectionnez Enregistrer.
Ouvrez le panneau Terminal intégré dans Visual Studio Code et entrez la commande pour générer votre programme.
Si des erreurs de build ou des avertissements ont été signalés, corrigez les problèmes avant de continuer.
Enregistrer les nouvelles informations sur les animaux de compagnie
Dans cette tâche, vous enregistrez les valeurs entrées pour les caractéristiques de l’animal dans le ourAnimals tableau.
Ajoutez une ligne de code vide sous le bloc de code de votre boucle de saisie de données de surnoms.
Pour stocker les valeurs de données spécifiées par l’utilisateur, entrez le code suivant :
// store the pet information in the ourAnimals array (zero based) ourAnimals[petCount, 0] = "ID #: " + animalID; ourAnimals[petCount, 1] = "Species: " + animalSpecies; ourAnimals[petCount, 2] = "Age: " + animalAge; ourAnimals[petCount, 3] = "Nickname: " + animalNickname; ourAnimals[petCount, 4] = "Physical description: " + animalPhysicalDescription; ourAnimals[petCount, 5] = "Personality: " + animalPersonalityDescription;Dans le menu Fichier de Visual Studio Code, sélectionnez Enregistrer.
Ouvrez le panneau Terminal intégré dans Visual Studio Code et entrez la commande pour générer votre programme.
Si des erreurs de build ou des avertissements ont été signalés, corrigez les problèmes avant de continuer.
Vérifier votre travail
Dans cette tâche, vous exécutez votre application à partir du terminal intégré et vérifiez que l’entrée de données d’animal fonctionne correctement.
Si nécessaire, ouvrez le volet Terminal intégré de Visual Studio Code.
À l’invite de commandes du Terminal, entrez dotnet run.
À l’invite de commandes terminal, entrez 2
Vérifiez que le panneau Terminal a été mis à jour pour afficher la sortie suivante :
We currently have 4 pets that need homes. We can manage 4 more. Enter 'dog' or 'cat' to begin a new entryEntrez les valeurs suivantes à l’invite de commandes terminal et vérifiez que chaque invite suivante s’affiche :
- À l’invite
Enter 'dog' or 'cat' to begin a new entry, entrez dog. - À l’invite
Enter the pet's age or enter ? if unknown, entrez ?. - À l’invite
Enter a physical description of the pet (size, color, gender, weight, housebroken), appuyez sur la touche Entrée. - À l’invite
Enter a description of the pet's personality (likes or dislikes, tricks, energy level), appuyez sur la touche Entrée. - À l’invite
Enter a nickname for the pet, appuyez sur la touche Entrée.
Le panneau Terminal doit être mis à jour comme suit :
Enter 'dog' or 'cat' to begin a new entry dog Enter the pet's age or enter ? if unknown ? Enter a physical description of the pet (size, color, gender, weight, housebroken) Enter a description of the pet's personality (likes or dislikes, tricks, energy level) Enter a nickname for the pet Do you want to enter info for another pet (y/n)- À l’invite
À l’invite de commande du terminal, entrez n
Vérifiez que le panneau Terminal a été mis à jour pour afficher les options de menu principal.
À l’invite de commandes terminal, entrez 1
Vérifiez que le panneau Terminal a été mis à jour pour afficher la sortie suivante :
ID #: d1 Species: dog Age: 2 Nickname: lola Physical description: medium sized cream colored female golden retriever weighing about 65 pounds. housebroken. Personality: loves to have her belly rubbed and likes to chase her tail. gives lots of kisses. ID #: d2 Species: dog Age: 9 Nickname: loki Physical description: large reddish-brown male golden retriever weighing about 85 pounds. housebroken. Personality: loves to have his ears rubbed when he greets you at the door, or at any time! loves to lean-in and give doggy hugs. ID #: c3 Species: cat Age: 1 Nickname: Puss Physical description: small white female weighing about 8 pounds. litter box trained. Personality: friendly ID #: c4 Species: cat Age: ? Nickname: Physical description: Personality: ID #: d5 Species: dog Age: ? Nickname: tbd Physical description: tbd Personality: tbd Press the Enter key to continueSi vos informations d’animal de compagnie nouvellement ajoutées ne s’affichent pas, vérifiez que vous avez inclus les lignes de code pour enregistrer les données dans le tableau OurAnimals et vérifiez que vous avez inclus la ligne de code pour construire le petID.
Vérifiez que vous pouvez créer des descriptions d’animaux supplémentaires pour les chiens et les chats et que les caractéristiques animales sont enregistrées dans le
ourAnimalstableau.Quittez l’application, puis fermez le panneau Terminal.
Félicitations pour terminer ce projet guidé ! Vous avez créé une application qui combine des instructions de sélection et d’itération pour atteindre vos objectifs de conception d’application. Votre application comprend plus de 300 lignes et effectue des tâches que vous pouvez trouver dans une application professionnelle. La réalisation de ce projet représente une réalisation importante. Continuez à faire du bon travail !