Cvičení – implementace příkazu foreach

Dokončeno

Předpokládejme, že pracujete pro výrobní společnost. Společnost potřebuje, abyste dokončili inventář vašeho skladu, abyste zjistili počet produktů, které jsou připravené k odeslání. Kromě celkového počtu hotových produktů musíte kromě celkového počtu hotových produktů nahlásit počet hotových produktů uložených v každém jednotlivém koši ve skladu spolu s průběžným součtem. Tento průběžný součet se použije k vytvoření záznamu auditu, abyste mohli pečlivě zkontrolovat svou práci a identifikovat "zmenšení".

Postupné procházení pole příkazem foreach

Příkaz foreach poskytuje jednoduchý a čistý způsob iterace prvky pole. Příkaz foreach zpracovává prvky pole v rostoucím pořadí indexu počínaje indexem 0 a končí indexem Délka - 1. Používá dočasnou proměnnou k uložení hodnoty prvku pole přidruženého k aktuální iteraci. Každá iterace spustí blok kódu, který se nachází pod deklarací foreach .

Tady je jednoduchý příklad:

string[] names = { "Rowena", "Robin", "Bao" };
foreach (string name in names)
{
    Console.WriteLine(name);
}

Pod klíčovým slovem foreach se blok kódu, který obsahuje Console.WriteLine(name);, provede jednou pro každý prvek pole names. Když modul runtime .NET v tomto bloku kódu postupně prochází jednotlivé prvky pole, přiřadí se hodnota uložená v aktuálním prvku pole names dočasné proměnné name pro snadný přístup.

Pokud jste kód spustili, zobrazil by se následující výsledek.

Rowena
Robin
Bao

foreach Pomocí příkazu vytvořte součet všech položek na ruce v každé přihrádce vašeho skladu.

Vytvoření a inicializace pole int

  1. Ujistěte se, že máte v editoru Visual Studio Code otevřený prázdný soubor Program.cs.

    V případě potřeby otevřete Visual Studio Code a pak následujícím postupem připravte soubor Program.cs v Editoru:

    1. V nabídce Soubor vyberte Otevřít složku.

    2. Pomocí dialogového okna Otevřít složku přejděte na složku CsharpProjects a otevřete ji.

    3. V zobrazení Průzkumníka editoru Visual Studio Code vyberte Program.cs.

    4. V nabídce Výběru editoru Visual Studio Code vyberte Vybrat vše a stiskněte klávesu Delete.

  2. Pokud chcete vytvořit pole typu int , do kterého se ukládá počet hotových produktů v každé přihrádce, zadejte následující kód:

    int[] inventory = { 200, 450, 700, 175, 250 };
    

Přidání příkazu foreach pro iteraci prostřednictvím pole

  1. Pokud chcete vytvořit foreach příkaz, který prochází každý prvek inventory pole, zadejte následující kód:

    foreach (int items in inventory)
    {
    
    }
    

    Všimněte si, že příkaz foreach dočasně přiřadí hodnotu aktuálního prvku pole proměnné int s názvem items.

  2. Ujistěte se, že váš kód odpovídá následujícímu:

    int[] inventory = { 200, 450, 700, 175, 250 };
    
    foreach (int items in inventory)
    {
    
    }
    

Přidejte proměnnou, která sečte hodnotu každého prvku v poli.

  1. Umístěte kurzor na prázdný řádek kódu nad foreach příkazem.

  2. Pokud chcete deklarovat novou proměnnou, která představuje součet všech hotových produktů ve vašem skladu, zadejte následující kód:

    int sum = 0;
    

    Ujistěte se, že deklarujete proměnnou mimoforeach příkaz.

  3. Umístěte kurzor do bloku foreach kódu příkazu.

  4. Pokud chcete přidat aktuální hodnotu uloženou items do sum proměnné, zadejte následující kód:

    sum += items;
    
  5. Ujistěte se, že váš kód odpovídá následujícímu:

    int[] inventory = { 200, 450, 700, 175, 250 };
    int sum = 0;
    foreach (int items in inventory)
    {
        sum += items;
    }
    

Zobrazení konečné hodnoty součtu

  1. Vytvořte prázdný řádek kódu pod blokem foreach kódu příkazu.

  2. Pokud chcete nahlásit konečný součet položek v inventáři, zadejte následující kód:

    Console.WriteLine($"We have {sum} items in inventory.");
    
  3. Ujistěte se, že váš kód odpovídá následujícímu:

    int[] inventory = { 200, 450, 700, 175, 250 };
    int sum = 0;
    foreach (int items in inventory)
    {
        sum += items;
    }
    
    Console.WriteLine($"We have {sum} items in inventory.");
    
  4. V nabídce Soubor editoru Visual Studio Code klepněte na tlačítko Uložit.

  5. Chcete-li v zobrazení PRŮZKUMNÍKa otevřít terminál v umístění složky TestProject, klepněte pravým tlačítkem myši na TestProject a pak vyberte Otevřít v integrovaném terminálu.

  6. Na příkazovém řádku terminálu zadejte příkaz dotnet run a stiskněte Enter.

    We have 1775 items in inventory.
    

Vytvoření proměnné pro uložení aktuálního čísla přihrádky a zobrazení průběžného součtu

Abyste splnili konečný požadavek projektu generování sestav zásob, budete muset vytvořit proměnnou, která bude obsahovat aktuální iteraci foreach příkazu, abyste mohli zobrazit interval a počet dokončených položek v tomto intervalu spolu s průběžným součtem všech položek přihrádek.

  1. Vytvořte prázdný řádek kódu nad příkazem foreach .

  2. Chcete-li deklarovat int proměnnou s názvem bin inicializovaná na 0, zadejte následující kód:

    int bin = 0;
    

    Použijete bin k uložení počtu přihrádek, jehož inventář se právě zpracovává.

  3. foreach Do bloku kódu zadejte následující kód, který se zvýší bin při každém spuštění bloku kódu:

    bin++;
    

    Všimněte si, že pomocí operátoru ++ zvýšíte hodnotu proměnné o 1. Toto je zkratka pro bin = bin + 1.

  4. Pokud chcete nahlásit číslo přihrádky, počet hotových produktů v koši a průběžný součet hotových produktů, zadejte do foreach bloku kódu následující kód za bin++;:

    Console.WriteLine($"Bin {bin} = {items} items (Running total: {sum})");
    

    Tento kód použije proměnnou binčítače , dočasnou foreach proměnnou itemsa proměnnou sum k hlášení aktuálního stavu inventáře v pěkně naformátované zprávě.

  5. Ujistěte se, že váš kód odpovídá následujícímu:

    int[] inventory = { 200, 450, 700, 175, 250 };
    int sum = 0;
    int bin = 0;
    foreach (int items in inventory)
    {
        sum += items;
        bin++;
        Console.WriteLine($"Bin {bin} = {items} items (Running total: {sum})");
    }
    Console.WriteLine($"We have {sum} items in inventory.");
    
  6. Uložte změny do souboru Program.cs a spusťte aplikaci.

    Měl by se zobrazit následující výstup:

    Bin 1 = 200 items (Running total: 200)
    Bin 2 = 450 items (Running total: 650)
    Bin 3 = 700 items (Running total: 1350)
    Bin 4 = 175 items (Running total: 1525)
    Bin 5 = 250 items (Running total: 1775)
    We have 1775 items in inventory.
    

Rekapitulace

Tady je pár věcí, které byste si měli zapamatovat o foreach příkazech a přírůstcích hodnot, které jste se naučili v této lekci:

  • Příkaz foreach se používá k procházení jednotlivých prvků pole, kdy se přidružený blok kódu provede jednou pro každý prvek v tomto poli.
  • Příkaz foreach nastavuje hodnotu aktuálního prvku pole do dočasné proměnné, kterou můžete použít v těle tohoto bloku kódu.
  • Operátor ++ slouží k přičtení hodnoty 1 k aktuální hodnotě proměnné.