Exercițiul - Scrieți cod pentru a citi și a salva noi date matriceAnimals
În acest exercițiu, dezvoltați buclele de validare a intrărilor de date pentru fiecare caracteristică a pet-ului, apoi stocați noile ourAnimals date matrice. Activitățile detaliate pe care le efectuați în timpul acestui exercițiu sunt:
- Citiți și validați speciile: construiți o buclă și structura de cod internă utilizată pentru a introduce și a valida speciile de animale de companie.
- Construiți ID-ul de companie: scrieți codul care utilizează petCount și numele speciilor pentru a construi valoarea PETID.
- Citiți și validați vârsta: construiți o buclă și structura de cod internă utilizată pentru a introduce și a valida vârsta de companie.
- Citiți și validați descrierea fizică: construiți o buclă și structura de cod interior utilizată pentru a introduce o descriere fizică a pet-ului.
- Citiți și validați descrierea personalității: construiți o buclă și structura de cod interior utilizată pentru a introduce o descriere a personalității pet-ului.
- Citiți și validați supranumele: construiți o buclă și structura de cod interior utilizată pentru a introduce un supranume pentru animale de companie.
- Test de verificare: efectuați teste de verificare pentru codul pe care îl dezvoltați în acest exercițiu.
Importantă
Trebuie să finalizați exercițiul anterior din acest modul înainte de a începe acest exercițiu.
Construiți bucla pentru a citi și a valida speciile de animale de companie
În această activitate, creați o do buclă care iterează până când utilizatorul introduce un nume valid de specie , câine saupisică. Reutilizați șirul readResult voidabil pentru a captura Console.ReadLine() intrarea. De asemenea, reutilizați variabila animalSpecies de șir pe care ați utilizat-o la generarea datelor eșantion. Adăugați o variabilă booleană nouă denumită validEntry în aplicație.
validEntry Utilizați într-o expresie care este evaluată ca criteriu de ieșire pentru do buclă.
Asigurați-vă că este deschis Visual Studio Code și că fișierul Program.cs este vizibil în Editor.
Găsiți instrucțiunea
while (anotherPet == "y" && petCount < maxPets), apoi adăugați o linie de cod necompletată în blocul de cod de sus.În linia de cod necompletată pe care ați creat-o, pentru a declara
validEntrycu o valoare inițială ,falseintroduceți următorul cod:bool validEntry = false;În linia de sub declarația de
validEntry, pentru a crea odobuclă pentru introducerea datelor speciilor, introduceți următorul cod:// get species (cat or dog) - string animalSpecies is a required field do { } while (validEntry == false);În interiorul blocului de cod al angajamentului dvs.
do, pentru a crea o solicitare de afișare și a citi intrarea utilizatorului, introduceți următorul cod:Console.WriteLine("\n\rEnter 'dog' or 'cat' to begin a new entry"); readResult = Console.ReadLine();Pentru a vă asigura că valoarea
readResultNU este nulă înainte dereadResulta atribui valoarea lui ,animalSpeciesintroduceți următorul cod:if (readResult != null) { animalSpecies = readResult.ToLower(); }Pe linia de sub atribuirea
animalSpeciesvalorii, pentru a vă asigura căanimalSpeciesconține un nume valid de specie, introduceți următorul cod:if (animalSpecies != "dog" && animalSpecies != "cat") { validEntry = false; } else { validEntry = true; }Comparați bucla de introducere a datelor de nume de specie finalizată cu următorul cod:
// 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);În meniul Fișier Visual Studio Code, selectați Salvare.
Deschideți panoul Terminal integrat în Visual Studio Code și introduceți comanda Construiți programul.
Dacă au fost raportate erori de compilare sau avertismente, remediați problemele înainte de a continua.
Construirea valorii ID animal
În această activitate, utilizați variabilele animalSpecies și petCount pentru a crea valoarea pe care o atribuiți lui animalID.
Adăugați o linie de cod necompletată sub blocul de cod din bucla de introducere a datelor de nume de specie.
Pentru a crea și a
animalIDatribui valoarea, introduceți următorul cod:// 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();În meniul Fișier Visual Studio Code, selectați Salvare.
Construiți bucla pentru a citi și a valida vârsta de companie
În această activitate, creați o do buclă care iterează până când utilizatorul introduce un număr întreg valid sau un ? număr întreg valid care reprezintă vârsta de ani de companie. Reutilizați șirul readResult nul pentru a captura Console.ReadLine() intrarea. De asemenea, reutilizați variabila animalAge de șir pe care ați utilizat-o la generarea datelor eșantion. Pentru a testa animalAge dacă șirul reprezintă sau nu un întreg valid, utilizați booleanul validEntry . Declarați o nouă variabilă întreagă denumită petAge pentru a stoca valoarea numerică. Încă o dată, validEntry Boolean este utilizat în expresia care este evaluată ca un criteriu de ieșire pentru bucla noastră do .
Adăugați o linie de cod necompletată sub linia utilizată pentru a atribui o valoare variabilei noastre
animalID.Pentru a crea o
dobuclă pentru introducerea datelor de vârstă, introduceți următorul cod:// get the pet's age. can be ? at initial entry. do { } while (validEntry == false);În interiorul blocului de cod al declarației dvs.
do, pentru a declara o variabilă întreagă denumităpetAge, introduceți următorul cod:int petAge;Pe linia de sub declarația de , pentru a afișa o solicitare de
petAgemesaj și a citi intrarea utilizatorului, introduceți următorul cod:Console.WriteLine("Enter the pet's age or enter ? if unknown"); readResult = Console.ReadLine();Pentru a vă asigura că valoarea
readResultnu este nulă înainte dereadResulta atribui valoarea luianimalAge, introduceți următorul cod:if (readResult != null) { animalAge = readResult; }Pe linia de sub atribuirea
animalAgevalorii, pentru a verifica dacă utilizatorul a introdus?înainte de a testa un întreg valid, introduceți următorul cod:if (animalAge != "?") { validEntry = int.TryParse(animalAge, out petAge); } else { validEntry = true; }Comparați bucla de introducere a datelor de vârstă finalizată cu următorul cod:
// 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);În meniul Fișier Visual Studio Code, selectați Salvare.
Deschideți panoul Terminal integrat în Visual Studio Code și introduceți comanda Construiți programul.
Dacă au fost raportate erori de compilare sau avertismente, remediați problemele înainte de a continua.
Construiți bucla pentru a citi și a valida descrierea fizică a pet-ului
În această activitate, creați o do buclă care iterează până când utilizatorul introduce o valoare șir care reprezintă o descriere fizică a unui animal de companie. Reutilizați șirul readResult nul pentru a captura Console.ReadLine() intrarea. De asemenea, reutilizați variabila animalPhysicalDescription de șir pe care ați utilizat-o la generarea datelor eșantion. Utilizați valoarea atribuită animalPhysicalDescription în expresia evaluată ca criteriu de ieșire pentru bucla noastră do .
Adăugați o linie de cod necompletată sub blocul de cod din bucla de introducere a datelor de vârstă.
Pentru a crea o
dobuclă pentru introducerea datelor de descriere fizică, introduceți următorul cod:// get a description of the pet's physical appearance/condition - animalPhysicalDescription can be blank. do { } while (animalPhysicalDescription == "");În interiorul blocului de cod al angajamentului dvs.
do, pentru a crea o solicitare de afișare și a citi intrarea utilizatorului, introduceți următorul cod:Console.WriteLine("Enter a physical description of the pet (size, color, gender, weight, housebroken)"); readResult = Console.ReadLine();Pentru a vă asigura că valoarea
readResultnu este nulă înainte dereadResulta atribui valoarea luianimalPhysicalDescription, introduceți următorul cod:if (readResult != null) { animalPhysicalDescription = readResult.ToLower(); }Pentru a atribui o valoare de
"tbd"laanimalPhysicalDescriptionmomentul introducerii valorii este"", introduceți următorul cod:if (animalPhysicalDescription == "") { animalPhysicalDescription = "tbd"; }Comparați bucla de introducere a datelor de descriere fizică finalizată cu următorul cod:
// 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 == "");În meniul Fișier Visual Studio Code, selectați Salvare.
Deschideți panoul Terminal integrat în Visual Studio Code și introduceți comanda Construiți programul.
Dacă au fost raportate erori de compilare sau avertismente, remediați problemele înainte de a continua.
Construiți bucla pentru a citi și a valida descrierea personalității pet-ului
În această activitate, creați o do buclă care iterează până când utilizatorul introduce o valoare șir care reprezintă o descriere a personalității unui animal de companie. Reutilizați șirul readResult nul pentru a captura Console.ReadLine() intrarea. De asemenea, reutilizați variabila animalPersonalityDescription de șir pe care ați utilizat-o la generarea datelor eșantion. Utilizați valoarea atribuită animalPersonalityDescription în expresia evaluată ca criteriu de ieșire pentru bucla noastră do .
Adăugați o linie de cod necompletată sub blocul de cod al buclei de introducere a datelor de descriere fizică.
Pentru a crea o
dobuclă pentru introducerea datelor de descriere a personalității, introduceți următorul cod:// get a description of the pet's personality - animalPersonalityDescription can be blank. do { } while (animalPersonalityDescription == "");În interiorul blocului de cod al angajamentului dvs.
do, pentru a crea o solicitare de afișare și a citi intrarea utilizatorului, introduceți următorul cod:Console.WriteLine("Enter a description of the pet's personality (likes or dislikes, tricks, energy level)"); readResult = Console.ReadLine();Pentru a vă asigura că valoarea
readResultnu este nulă înainte dereadResulta atribui valoarea luianimalPersonalityDescription, introduceți următorul cod:if (readResult != null) { animalPersonalityDescription = readResult.ToLower(); }Pentru a atribui o valoare de
"tbd"laanimalPersonalityDescriptionmomentul introducerii valorii este"", introduceți următorul cod:if (animalPersonalityDescription == "") { animalPersonalityDescription = "tbd"; }Comparați bucla de introducere a datelor de descriere a personalității completate cu următorul cod:
// 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 == "");În meniul Fișier Visual Studio Code, selectați Salvare.
Deschideți panoul Terminal integrat în Visual Studio Code și introduceți comanda Construiți programul.
Dacă au fost raportate erori de compilare sau avertismente, remediați problemele înainte de a continua.
Construiți bucla pentru a citi și a valida supranumele pet-ului
În această activitate, creați o do buclă care iterează până când utilizatorul introduce o valoare șir care reprezintă un supranume pentru un animal de companie. Reutilizați șirul readResult nul pentru a captura Console.ReadLine() intrarea. De asemenea, reutilizați variabila animalNickname de șir pe care ați utilizat-o la generarea datelor eșantion. Utilizați valoarea atribuită animalNickname în expresia evaluată ca criteriu de ieșire pentru bucla noastră do .
Adăugați o linie de cod necompletată sub blocul de cod al buclei de introducere a datelor de descriere a personalității.
Pentru a crea o
dobuclă pentru introducerea datelor de descriere a personalității, introduceți următorul cod:// get the pet's nickname. animalNickname can be blank. do { } while (animalNickname == "");În interiorul blocului de cod al angajamentului dvs.
do, pentru a crea o solicitare de afișare și a citi intrarea utilizatorului, introduceți următorul cod:Console.WriteLine("Enter a nickname for the pet"); readResult = Console.ReadLine();Pentru a vă asigura că valoarea
readResultnu este nulă înainte dereadResulta atribui valoarea luianimalNickname, introduceți următorul cod:if (readResult != null) { animalNickname = readResult.ToLower(); }Pentru a atribui o valoare de
"tbd"laanimalNicknamemomentul introducerii valorii este"", introduceți următorul cod:if (animalNickname == "") { animalNickname = "tbd"; }Comparați bucla de introducere a datelor supranume finalizată cu următorul cod:
// 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 == "");În meniul Fișier Visual Studio Code, selectați Salvare.
Deschideți panoul Terminal integrat în Visual Studio Code și introduceți comanda Construiți programul.
Dacă au fost raportate erori de compilare sau avertismente, remediați problemele înainte de a continua.
Salvați noile informații despre animale de companie
În această activitate, salvați valorile introduse pentru caracteristicile animalelor de companie în ourAnimals matrice.
Adăugați o linie de cod necompletată sub blocul de cod din bucla de introducere a datelor supranume.
Pentru a stoca valorile de date specificate de utilizator, introduceți următorul cod:
// 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;În meniul Fișier Visual Studio Code, selectați Salvare.
Deschideți panoul Terminal integrat în Visual Studio Code și introduceți comanda Construiți programul.
Dacă au fost raportate erori de compilare sau avertismente, remediați problemele înainte de a continua.
Verificați-vă activitatea
În această activitate, rulați aplicația de la Terminalul integrat și verificați dacă introducerea datelor de companie funcționează corect.
Dacă este necesar, deschideți panoul Terminal integrat visual Studio Code.
În linia de comandă Terminal, introduceți run dotnet
În linia de comandă Terminal, introduceți 2
Verificați dacă panoul Terminal s-a actualizat pentru a afișa următoarea ieșire:
We currently have 4 pets that need homes. We can manage 4 more. Enter 'dog' or 'cat' to begin a new entryIntroduceți următoarele valori în linia de comandă Terminal și verificați dacă se afișează fiecare solicitare ulterioară:
-
Enter 'dog' or 'cat' to begin a new entryLa solicitare, introduceți câine -
Enter the pet's age or enter ? if unknownLa solicitare, introduceți ? -
Enter a physical description of the pet (size, color, gender, weight, housebroken)La solicitare, apăsați tasta Enter. -
Enter a description of the pet's personality (likes or dislikes, tricks, energy level)La solicitare, apăsați tasta Enter. -
Enter a nickname for the petLa solicitare, apăsați tasta Enter.
Panoul terminal trebuie actualizat după cum urmează:
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)-
În linia de comandă Terminal, introduceți n
Verificați dacă panoul Terminal s-a actualizat pentru a afișa opțiunile meniului principal.
În linia de comandă Terminal, introduceți 1
Verificați dacă panoul Terminal s-a actualizat pentru a afișa următoarea ieșire:
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 continueDacă nu se afișează informațiile despre animale de companie nou adăugate, asigurați-vă că ați inclus liniile de cod pentru a salva datele în matricea NoastrăAnimals și asigurați-vă că ați inclus linia de cod pentru a construi PETID-ul.
Verificați dacă puteți crea descrieri suplimentare ale animalelor pentru câini și pisici și că caracteristicile animalelor sunt salvate în
ourAnimalsmatrice.Ieșiți din aplicație, apoi închideți panoul Terminal.
Felicitări pentru finalizarea acestui proiect ghidat! Ați creat o aplicație care combină selecții și instrucțiuni de iterație pentru a vă atinge obiectivele de proiectare a aplicației. Aplicația dvs. include peste 300 de linii și efectuează activități pe care le puteți găsi într-o aplicație profesionistă. Finalizarea acestui proiect reprezintă o realizare semnificativă. Țineți-o tot așa!