Übung – Schreiben Sie Code, um die neuen Daten des Arrays unserer Tiere zu lesen und zu speichern.

Abgeschlossen

In dieser Übung entwickeln Sie die Dateneingabeüberprüfungsschleifen für jedes Haustiermerkmal und speichern dann die neuen ourAnimals Arraydaten. Die detaillierten Aufgaben, die Sie während dieser Übung ausführen, sind:

  1. Lesen und Überprüfen von Arten: Erstellen Sie eine Schleife und die innere Codestruktur, die zum Eingeben und Überprüfen der Haustierarten verwendet wird.
  2. Erstellen Sie die Pet-ID: Schreiben Sie den Code, der petCount und den Artennamen verwendet, um den PetID-Wert zu erstellen.
  3. Lesen und Überprüfen des Alters: Erstellen Sie eine Schleife und die innere Codestruktur, die verwendet wird, um das Alter des Haustiers einzugeben und zu überprüfen.
  4. Lesen und Überprüfen der physischen Beschreibung: Erstellen Sie eine Schleife und die innere Codestruktur, die zum Eingeben einer physischen Beschreibung des Haustiers verwendet wird.
  5. Lesen und Überprüfen der Persönlichkeitsbeschreibung: Erstellen Sie eine Schleife und die innere Codestruktur, die verwendet wird, um eine Beschreibung der Persönlichkeit des Haustiers einzugeben.
  6. Spitzname lesen und überprüfen: Erstellen Sie eine Schleife und die innere Codestruktur, die zum Eingeben eines Spitznamens für das Haustier verwendet wird.
  7. Überprüfungstest: Führen Sie Überprüfungstests für den Code aus, den Sie in dieser Übung entwickeln.

Von Bedeutung

Sie müssen die vorherige Übung in diesem Modul abschließen, bevor Sie diese Übung starten.

Erstellen einer Schleife zum Lesen und Überprüfen der Haustierarten

In dieser Aufgabe erstellen Sie eine do Schleife, die durchläuft, bis der Benutzer einen gültigen Artennamen eingibt, entweder Hund oder Katze. Sie verwenden ihre ungültige Zeichenfolge readResult wieder, um die Console.ReadLine() Eingabe zu erfassen. Sie verwenden auch die animalSpecies Zeichenfolgenvariable, die Sie beim Generieren der Beispieldaten verwendet haben. Sie fügen ihrer App eine neue boolesche Variable hinzu validEntry . Sie verwenden validEntry einen Ausdruck, der als Beendigungskriterien für die do Schleife ausgewertet wird.

  1. Stellen Sie sicher, dass Visual Studio Code geöffnet ist und ihre Program.cs Datei im Editor sichtbar ist.

  2. Suchen Sie die while (anotherPet == "y" && petCount < maxPets) Anweisung, und fügen Sie dann eine leere Codezeile am oberen Codeblock hinzu.

  3. Geben Sie in der von Ihnen erstellten leeren Codezeile den folgenden Code ein, um ihn mit einem Anfangswert zu validEntrydeklarierenfalse:

    bool validEntry = false;
    
    
  4. Geben Sie in der Zeile unterhalb der Deklaration von validEntry, um eine do Schleife für die Eingabe von Artendaten zu erstellen, den folgenden Code ein:

    // get species (cat or dog) - string animalSpecies is a required field 
    do
    {
    } while (validEntry == false);
    
    
  5. Geben Sie im Codeblock Ihrer do Anweisung den folgenden Code ein, um eine Anzeigeaufforderung zu erstellen und die Benutzereingabe zu lesen:

    Console.WriteLine("\n\rEnter 'dog' or 'cat' to begin a new entry");
    readResult = Console.ReadLine();
    
    
  6. Geben Sie den folgenden Code ein, um sicherzustellen, dass der Wert VON readResult NICHT NULL ist, bevor Sie den Wert readResultanimalSpecieszuweisen:

    if (readResult != null)
    {
        animalSpecies = readResult.ToLower();
    
    }
    
  7. Geben Sie in der Zeile unterhalb der animalSpecies Wertzuweisung den folgenden Code ein, um sicherzustellen, dass animalSpecies er einen gültigen Artennamen enthält:

    if (animalSpecies != "dog" && animalSpecies != "cat")
    {
        validEntry = false;
    }
    else
    {
        validEntry = true;
    }
    
  8. Vergleichen Sie die Dateneingabeschleife für den vollständigen Artennamen mit dem folgenden Code:

    // 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);
    
  9. Wählen Sie im Visual Studio Code-Menü Datei die Option Speichern aus.

  10. Öffnen Sie den Bereich "Integriertes Terminal" in Visual Studio Code, und geben Sie den Befehl ein, um Ihr Programm zu erstellen.

    Wenn Buildfehler oder Warnungen gemeldet wurden, beheben Sie die Probleme, bevor Sie fortfahren.

Erstellen des Tier-ID-Werts

In dieser Aufgabe verwenden Sie die animalSpecies und petCount variablen, um den Wert zu erstellen, den Sie zuweisen animalID.

  1. Fügen Sie eine leere Codezeile unterhalb des Codeblocks ihrer Artennamen-Dateneingabeschleife hinzu.

  2. Um den animalID Wert zu erstellen und zuzuweisen, geben Sie den folgenden Code ein:

    // 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();
    
    
  3. Wählen Sie im Visual Studio Code-Menü Datei die Option Speichern aus.

Erstellen einer Schleife zum Lesen und Überprüfen des Alters des Haustiers

In dieser Aufgabe erstellen Sie eine do Schleife, die durchläuft, bis der Benutzer eine ? oder eine gültige ganze Zahl eingibt, die das Alter des Haustiers in Jahren darstellt. Sie verwenden die ungültige Zeichenfolge readResult wieder, um die Console.ReadLine() Eingabe zu erfassen. Sie verwenden auch die animalAge Zeichenfolgenvariable, die Sie beim Generieren der Beispieldaten verwendet haben. Um zu testen, ob die animalAge Zeichenfolge eine gültige ganze Zahl darstellt, verwenden Sie den validEntry Booleschen Wert. Sie deklarieren eine neue ganzzahlige Variable, die zum Speichern des numerischen Werts benannt ist petAge . Erneut wird der validEntry boolesche Wert im Ausdruck verwendet, der als Beendigungskriterien für unsere do Schleife ausgewertet wird.

  1. Fügen Sie eine leere Codezeile unterhalb der Zeile hinzu, die zum Zuweisen eines Werts zu unserer animalID Variablen verwendet wird.

  2. Um eine do Schleife für die Altersdateneingabe zu erstellen, geben Sie den folgenden Code ein:

    // get the pet's age. can be ? at initial entry. 
    do
    {
    } while (validEntry == false);
    
    
  3. Geben Sie innerhalb des Codeblocks Ihrer do Anweisung eine ganzzahlige Variable mit dem Namen petAgeein, und geben Sie den folgenden Code ein:

    int petAge;
    
    
  4. Geben Sie in der Zeile unterhalb der Deklaration von petAge, um eine Meldungsaufforderung anzuzeigen und die Benutzereingabe zu lesen, den folgenden Code ein:

    Console.WriteLine("Enter the pet's age or enter ? if unknown");
    readResult = Console.ReadLine();
    
    
  5. Geben Sie den folgenden Code ein, um sicherzustellen, dass der Wert von readResult "null" nicht ist, bevor Der Wert zugewiesen readResultanimalAgewird:

    if (readResult != null)
    {
        animalAge = readResult;
    
    }
    
  6. Geben Sie in der Zeile unterhalb der animalAge Wertzuweisung den folgenden Code ein, um zu überprüfen, ob der Benutzer vor dem Testen einer gültigen ganzzahligen Zahl eingegeben ? hat:

    if (animalAge != "?")
    {
        validEntry = int.TryParse(animalAge, out petAge);
    }
    else
    {
        validEntry = true;
    }
    
  7. Vergleichen Sie ihre abgeschlossene Altersdateneingabeschleife mit dem folgenden Code:

    // 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);
    
  8. Wählen Sie im Visual Studio Code-Menü Datei die Option Speichern aus.

  9. Öffnen Sie den Bereich "Integriertes Terminal" in Visual Studio Code, und geben Sie den Befehl ein, um Ihr Programm zu erstellen.

    Wenn Buildfehler oder Warnungen gemeldet wurden, beheben Sie die Probleme, bevor Sie fortfahren.

Erstellen einer Schleife zum Lesen und Überprüfen der physischen Beschreibung des Haustiers

In dieser Aufgabe erstellen Sie eine do Schleife, die durchläuft, bis der Benutzer einen Zeichenfolgenwert eingibt, der eine physische Beschreibung eines Haustiers darstellt. Sie verwenden die ungültige Zeichenfolge readResult wieder, um die Console.ReadLine() Eingabe zu erfassen. Sie verwenden auch die animalPhysicalDescription Zeichenfolgenvariable, die Sie beim Generieren der Beispieldaten verwendet haben. Sie verwenden den Wert, der im Ausdruck zugewiesen animalPhysicalDescription ist, der als Beendigungskriterien für unsere do Schleife ausgewertet wird.

  1. Fügen Sie unterhalb des Codeblocks ihrer Altersdateneingabeschleife eine leere Codezeile hinzu.

  2. Geben Sie den folgenden Code ein, um eine do Schleife für die Eingabe physischer Beschreibungsdaten zu erstellen:

    // get a description of the pet's physical appearance/condition - animalPhysicalDescription can be blank.
    do
    {
    } while (animalPhysicalDescription == "");
    
    
  3. Geben Sie im Codeblock Ihrer do Anweisung den folgenden Code ein, um eine Anzeigeaufforderung zu erstellen und die Benutzereingabe zu lesen:

    Console.WriteLine("Enter a physical description of the pet (size, color, gender, weight, housebroken)");
    readResult = Console.ReadLine();
    
    
  4. Geben Sie den folgenden Code ein, um sicherzustellen, dass der Wert von readResult "null" nicht ist, bevor Der Wert zugewiesen readResultanimalPhysicalDescriptionwird:

    if (readResult != null)
    {
        animalPhysicalDescription = readResult.ToLower();
    
    }
    
  5. Um dem eingegebenen "tbd"Wert einen Wert animalPhysicalDescription zuzuweisen"", geben Sie den folgenden Code ein:

    if (animalPhysicalDescription == "")
    {
        animalPhysicalDescription = "tbd";
    }
    
  6. Vergleichen Sie die abgeschlossene dateneingabeschleife für die physische Beschreibung mit dem folgenden Code:

    // 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 == "");
    
  7. Wählen Sie im Visual Studio Code-Menü Datei die Option Speichern aus.

  8. Öffnen Sie den Bereich "Integriertes Terminal" in Visual Studio Code, und geben Sie den Befehl ein, um Ihr Programm zu erstellen.

    Wenn Buildfehler oder Warnungen gemeldet wurden, beheben Sie die Probleme, bevor Sie fortfahren.

Erstellen einer Schleife zum Lesen und Überprüfen der Persönlichkeitsbeschreibung des Haustiers

In dieser Aufgabe erstellen Sie eine do Schleife, die durchläuft, bis der Benutzer einen Zeichenfolgenwert eingibt, der eine Beschreibung der Persönlichkeit eines Haustiers darstellt. Sie verwenden die ungültige Zeichenfolge readResult wieder, um die Console.ReadLine() Eingabe zu erfassen. Sie verwenden auch die animalPersonalityDescription Zeichenfolgenvariable, die Sie beim Generieren der Beispieldaten verwendet haben. Sie verwenden den Wert, der im Ausdruck zugewiesen animalPersonalityDescription ist, der als Beendigungskriterien für unsere do Schleife ausgewertet wird.

  1. Fügen Sie eine leere Codezeile unterhalb des Codeblocks ihrer physischen Beschreibungsdateneingabeschleife hinzu.

  2. Um eine Schleife für die do Dateneingabe der Persönlichkeitsbeschreibung zu erstellen, geben Sie den folgenden Code ein:

    // get a description of the pet's personality - animalPersonalityDescription can be blank.
    do
    {
    } while (animalPersonalityDescription == "");
    
    
  3. Geben Sie im Codeblock Ihrer do Anweisung den folgenden Code ein, um eine Anzeigeaufforderung zu erstellen und die Benutzereingabe zu lesen:

    Console.WriteLine("Enter a description of the pet's personality (likes or dislikes, tricks, energy level)");
    readResult = Console.ReadLine();
    
    
  4. Geben Sie den folgenden Code ein, um sicherzustellen, dass der Wert von readResult "null" nicht ist, bevor Der Wert zugewiesen readResultanimalPersonalityDescriptionwird:

    if (readResult != null)
    {
        animalPersonalityDescription = readResult.ToLower();
    
    }
    
  5. Um dem eingegebenen "tbd"Wert einen Wert animalPersonalityDescription zuzuweisen"", geben Sie den folgenden Code ein:

    if (animalPersonalityDescription == "")
    {
        animalPersonalityDescription = "tbd";
    }
    
  6. Vergleichen Sie die vollständige Dateneingabeschleife der Persönlichkeitsbeschreibung mit dem folgenden Code:

    // 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 == "");
    
  7. Wählen Sie im Visual Studio Code-Menü Datei die Option Speichern aus.

  8. Öffnen Sie den Bereich "Integriertes Terminal" in Visual Studio Code, und geben Sie den Befehl ein, um Ihr Programm zu erstellen.

    Wenn Buildfehler oder Warnungen gemeldet wurden, beheben Sie die Probleme, bevor Sie fortfahren.

Erstellen einer Schleife zum Lesen und Überprüfen des Spitznamens des Haustiers

In dieser Aufgabe erstellen Sie eine do Schleife, die durchläuft, bis der Benutzer einen Zeichenfolgenwert eingibt, der einen Spitznamen für ein Haustier darstellt. Sie verwenden die ungültige Zeichenfolge readResult wieder, um die Console.ReadLine() Eingabe zu erfassen. Sie verwenden auch die animalNickname Zeichenfolgenvariable, die Sie beim Generieren der Beispieldaten verwendet haben. Sie verwenden den Wert, der im Ausdruck zugewiesen animalNickname ist, der als Beendigungskriterien für unsere do Schleife ausgewertet wird.

  1. Fügen Sie unterhalb des Codeblocks der Dateneingabeschleife ihrer Persönlichkeitsbeschreibung eine leere Codezeile hinzu.

  2. Um eine Schleife für die do Dateneingabe der Persönlichkeitsbeschreibung zu erstellen, geben Sie den folgenden Code ein:

    // get the pet's nickname. animalNickname can be blank.
    do
    {
    } while (animalNickname == "");
    
    
  3. Geben Sie im Codeblock Ihrer do Anweisung den folgenden Code ein, um eine Anzeigeaufforderung zu erstellen und die Benutzereingabe zu lesen:

    Console.WriteLine("Enter a nickname for the pet");
    readResult = Console.ReadLine();
    
    
  4. Geben Sie den folgenden Code ein, um sicherzustellen, dass der Wert von readResult "null" nicht ist, bevor Der Wert zugewiesen readResultanimalNicknamewird:

    if (readResult != null)
    {
        animalNickname = readResult.ToLower();
    
    }
    
  5. Um dem eingegebenen "tbd"Wert einen Wert animalNickname zuzuweisen"", geben Sie den folgenden Code ein:

    if (animalNickname == "")
    {
        animalNickname = "tbd";
    }
    
  6. Vergleichen Sie ihre abgeschlossene Spitznamendateneingabeschleife mit dem folgenden Code:

    // 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 == "");
    
  7. Wählen Sie im Visual Studio Code-Menü Datei die Option Speichern aus.

  8. Öffnen Sie den Bereich "Integriertes Terminal" in Visual Studio Code, und geben Sie den Befehl ein, um Ihr Programm zu erstellen.

    Wenn Buildfehler oder Warnungen gemeldet wurden, beheben Sie die Probleme, bevor Sie fortfahren.

Speichern der neuen Haustierinformationen

In dieser Aufgabe speichern Sie die werte, die für die Tiermerkmale in das ourAnimals Array eingegeben wurden.

  1. Fügen Sie unterhalb des Codeblocks ihrer Spitznamendateneingabeschleife eine leere Codezeile hinzu.

  2. Geben Sie den folgenden Code ein, um die vom Benutzer angegebenen Datenwerte zu speichern:

    // 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;
    
  3. Wählen Sie im Visual Studio Code-Menü Datei die Option Speichern aus.

  4. Öffnen Sie den Bereich "Integriertes Terminal" in Visual Studio Code, und geben Sie den Befehl ein, um Ihr Programm zu erstellen.

    Wenn Buildfehler oder Warnungen gemeldet wurden, beheben Sie die Probleme, bevor Sie fortfahren.

Überprüfen Sie Ihre Arbeit

In dieser Aufgabe führen Sie Ihre Anwendung über das integrierte Terminal aus und stellen sicher, dass die Dateneingabe von Haustieren ordnungsgemäß funktioniert.

  1. Öffnen Sie bei Bedarf das Visual Studio Code-Panel „Integriertes Terminal“.

  2. Geben Sie im Terminal den Befehl dotnet run ein.

  3. Geben Sie an der Eingabeaufforderung "Terminal" 2 ein.

  4. Vergewissern Sie sich, dass der Terminalbereich aktualisiert wurde, um die folgende Ausgabe anzuzeigen:

    We currently have 4 pets that need homes. We can manage 4 more.
    
    Enter 'dog' or 'cat' to begin a new entry
    
  5. Geben Sie die folgenden Werte an den Terminal-Eingabeaufforderungen ein, und stellen Sie sicher, dass jede nachfolgende Eingabeaufforderung angezeigt wird:

    • Geben Sie an der Eingabeaufforderung einen Enter 'dog' or 'cat' to begin a new entryHund ein
    • Geben Sie an der Enter the pet's age or enter ? if unknown Eingabeaufforderung ?
    • Drücken Sie an der Enter a physical description of the pet (size, color, gender, weight, housebroken) Eingabeaufforderung die EINGABETASTE.
    • Drücken Sie an der Enter a description of the pet's personality (likes or dislikes, tricks, energy level) Eingabeaufforderung die EINGABETASTE.
    • Drücken Sie an der Enter a nickname for the pet Eingabeaufforderung die EINGABETASTE.

    Das Terminalpanel sollte wie folgt aktualisiert werden:

    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)
    
  6. Geben Sie an der Eingabeaufforderung "Terminal" "n" ein.

  7. Vergewissern Sie sich, dass der Terminalbereich aktualisiert wurde, um die Hauptmenüoptionen anzuzeigen.

  8. Geben Sie im Terminal-Eingabefeld 1 ein.

  9. Vergewissern Sie sich, dass der Terminalbereich aktualisiert wurde, um die folgende Ausgabe anzuzeigen:

    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 continue
    

    Wenn Ihre neu hinzugefügten Haustierinformationen nicht angezeigt werden, vergewissern Sie sich, dass Sie die Codezeilen zum Speichern der Daten im Array "Animals" eingefügt haben, und überprüfen Sie, ob Sie die Codezeile zum Erstellen der PetID eingeschlossen haben.

  10. Stellen Sie sicher, dass Sie zusätzliche Tierbeschreibungen für Hunde und Katzen erstellen können und dass tierliche Merkmale im ourAnimals Array gespeichert werden.

  11. Beenden Sie die Anwendung, und schließen Sie dann den Terminalbereich.

Herzlichen Glückwunsch zum Abschluss dieses geführten Projekts! Sie haben eine Anwendung erstellt, die Auswahl- und Iterationsanweisungen kombiniert, um Ihre Anwendungsentwurfsziele zu erreichen. Ihre Anwendung umfasst über 300 Zeilen und führt Aufgaben aus, die Sie möglicherweise in einer professionellen Anwendung finden. Das Abschließen dieses Projekts stellt eine bedeutende Leistung dar. Weiter so.