แบบฝึกหัด - ใช้คําสั่ง foreach

เสร็จสมบูรณ์เมื่อ

สมมติว่าคุณทํางานให้กับบริษัทผลิต บริษัทต้องการให้คุณทําสินค้าคงคลังของคลังสินค้าของคุณให้เสร็จสมบูรณ์เพื่อกําหนดจํานวนของผลิตภัณฑ์ที่พร้อมจะจัดส่ง นอกเหนือจากจํานวนผลิตภัณฑ์สําเร็จรูปทั้งหมด คุณจําเป็นต้องรายงานจํานวนผลิตภัณฑ์สําเร็จรูปที่จัดเก็บไว้ในแต่ละช่องเก็บในคลังสินค้าของคุณ รวมทั้งยอดรวมที่รันอยู่ ผลรวมสะสมนี้จะถูกใช้เพื่อสร้างบันทึกการตรวจสอบเพื่อให้คุณสามารถตรวจสอบงานของคุณอีกครั้งและระบุ "การลดขนาด" ได้

การวนรอบผ่านอาร์เรย์โดยใช้ foreach

คําสั่ง foreach มีวิธีที่เรียบง่ายและสะอาดในการดําเนินการผ่านองค์ประกอบของอาร์เรย์ คําสั่ง foreach ประมวลผลองค์ประกอบอาร์เรย์ในลําดับดัชนีที่เพิ่มขึ้น โดยเริ่มต้นด้วยดัชนี 0 และลงท้ายด้วยความยาวของดัชนี - 1 ซึ่งใช้ตัวแปรชั่วคราวเพื่อเก็บค่าขององค์ประกอบอาร์เรย์ที่เชื่อมโยงกับการทําซ้ําปัจจุบัน การทําซ้ําแต่ละครั้งจะเรียกใช้บล็อกรหัสที่อยู่ต่ํากว่า foreach การประกาศ

ต่อไปนี้คือตัวอย่างแบบง่าย:

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

ด้านล่างคํา foreach สําคัญ บล็อกรหัสที่มี Console.WriteLine(name); จะดําเนินการหนึ่งครั้งสําหรับแต่ละองค์ประกอบของ names อาร์เรย์ เมื่อรันไทม์ .NET วนรอบผ่านแต่ละองค์ประกอบของอาร์เรย์ ค่าที่จัดเก็บในองค์ประกอบปัจจุบันของ names อาร์เรย์ จะถูกกําหนดให้กับตัวแปร name ชั่วคราวเพื่อให้เข้าถึงได้ง่ายภายในบล็อกรหัส

ถ้าคุณเรียกใช้รหัส คุณจะเห็นผลลัพธ์ต่อไปนี้

Rowena
Robin
Bao

foreachใช้คําสั่ง เพื่อสร้างผลรวมของสินค้าที่มีอยู่ทั้งหมดในช่องเก็บแต่ละช่องเก็บของคลังสินค้าของคุณ

สร้างและเริ่มต้นอาร์เรย์ของ int

  1. ตรวจสอบให้แน่ใจว่า คุณมีไฟล์ Program.cs ที่ว่างเปล่าเปิดอยู่ในรหัส Visual Studio

    หากจําเป็น ให้เปิด Visual Studio Code แล้วทําตามขั้นตอนต่อไปนี้เพื่อเตรียมไฟล์ Program.cs ในตัวแก้ไข:

    1. บนเมนู ไฟล์ เลือก เปิดโฟลเดอร์

    2. ใช้กล่องโต้ตอบ เปิดโฟลเดอร์ เพื่อนําทางไปยัง และจากนั้นเปิดโฟลเดอร์ CsharpProjects

    3. ในมุมมอง Visual Studio Code EXPLORER ให้เลือก Program.cs

    4. บนเมนู การเลือก รหัส Visual Studio เลือก เลือกทั้งหมด แล้วกดปุ่มลบ

  2. เมื่อต้องการสร้างอาร์เรย์ของชนิด int ที่จัดเก็บจํานวนของผลิตภัณฑ์สําเร็จรูปในแต่ละช่องเก็บ ให้ป้อนรหัสต่อไปนี้:

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

เพิ่มคําสั่ง foreach เพื่อทําซ้ําคําสั่งผ่านอาร์เรย์

  1. หากต้องการสร้าง foreach คําสั่งที่ทําซ้ําผ่านแต่ละองค์ประกอบของ inventory อาร์เรย์ ให้ป้อนรหัสต่อไปนี้:

    foreach (int items in inventory)
    {
    
    }
    

    โปรดสังเกตว่าforeachคําสั่ง กําหนดค่าขององค์ประกอบอาร์เรย์ปัจจุบันชั่วคราวให้กับตัวแปรที่intชื่อว่าitems

  2. ตรวจสอบให้แน่ใจว่าโค้ดของคุณตรงกับรายการต่อไปนี้:

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

เพิ่มตัวแปรเพื่อรวมค่าของแต่ละองค์ประกอบในอาร์เรย์

  1. วางตําแหน่งเคอร์เซอร์บนบรรทัดรหัสที่ว่างเปล่าเหนือ foreach คําสั่ง

  2. เมื่อต้องการตรวจนับตัวแปรใหม่ที่แสดงผลรวมของผลิตภัณฑ์สําเร็จรูปทั้งหมดในคลังสินค้าของคุณ ให้ป้อนรหัสต่อไปนี้

    int sum = 0;
    

    ตรวจสอบให้แน่ใจว่าคุณได้ประกาศตัวแปรภายนอกforeachคําสั่งแล้ว

  3. วางตําแหน่งเคอร์เซอร์ภายในบล็อกรหัสของ foreach คําสั่ง

  4. หากต้องการเพิ่มค่าปัจจุบันที่จัดเก็บไว้ในitemssumตัวแปร ให้ป้อนรหัสต่อไปนี้:

    sum += items;
    
  5. ตรวจสอบให้แน่ใจว่าโค้ดของคุณตรงกับรายการต่อไปนี้:

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

แสดงค่าสุดท้ายของผลรวม

  1. สร้างบรรทัดรหัสว่างใต้บล็อกรหัสของ foreach คําสั่ง

  2. เมื่อต้องการรายงานผลรวมสุดท้ายของสินค้าในสินค้าคงคลังของคุณ ให้ป้อนรหัสต่อไปนี้:

    Console.WriteLine($"We have {sum} items in inventory.");
    
  3. ตรวจสอบให้แน่ใจว่าโค้ดของคุณตรงกับรายการต่อไปนี้:

    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. บนเมนู ไฟล์ของ Visual Studio Code ให้คลิก บันทึก

  5. ในมุมมอง EXPLORER เมื่อต้องการเปิดเทอร์มินัลที่ตําแหน่งที่ตั้งโฟลเดอร์ TestProject ของคุณ ให้คลิกขวาที่ TestProject จากนั้นเลือกเปิดในเทอร์มินัลรวม

  6. ที่พร้อมท์คําสั่งเทอร์มินัล ให้พิมพ์ dotnet run แล้วกด Enter

    We have 1775 items in inventory.
    

สร้างตัวแปรเพื่อเก็บหมายเลขช่องเก็บปัจจุบันและแสดงผลรวมสะสม

เพื่อปฏิบัติตามข้อกําหนดสุดท้ายของโครงการรายงานสินค้าคงคลังของคุณ คุณจะต้องสร้างตัวแปรที่จะเก็บการเกิดซ้ําปัจจุบันของ foreach คําสั่ง เพื่อให้คุณสามารถแสดงช่องเก็บและจํานวนสินค้าสําเร็จรูปในช่องเก็บนั้น พร้อมกับผลรวมสะสมของรายการทั้งหมดในช่องเก็บที่คิดบัญชีไว้

  1. สร้างบรรทัดรหัสว่างเหนือ foreach คําสั่ง

  2. เมื่อต้องการตรวจนับ int ตัวแปรที่มี bin ชื่อว่า ที่มีการเตรียมใช้งานเป็น 0ให้ป้อนรหัสต่อไปนี้:

    int bin = 0;
    

    คุณจะใช้ bin เพื่อเก็บหมายเลขของช่องเก็บที่มีการประมวลผลสินค้าคงคลังอยู่ในปัจจุบัน

  3. ภายในบล็อก foreach รหัสเพื่อเพิ่ม bin แต่ละครั้งที่มีการดําเนินการบล็อกรหัสให้ป้อนรหัสต่อไปนี้:

    bin++;
    

    โปรดสังเกตว่าคุณใช้ตัว ++ ดําเนินการ เพื่อเพิ่มค่าของตัวแปรทีละ 1 นี่คือทางลัดสําหรับbin = bin + 1

  4. เมื่อต้องการรายงานหมายเลขช่องเก็บ จํานวนของผลิตภัณฑ์สําเร็จรูปในช่องเก็บและผลรวมสะสมของผลิตภัณฑ์สําเร็จรูป ให้ป้อนรหัสต่อไปนี้ภายใน foreach บล็อกรหัสหลังจาก bin++;:

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

    รหัสนี้จะใช้ตัวแปรbinตัวนับของคุณ ตัวแปรforeachชั่วคราว items และตัวแปรของคุณsumเพื่อรายงานสถานะปัจจุบันของสินค้าคงคลังของคุณในข้อความที่จัดรูปแบบอย่างดี

  5. ตรวจสอบให้แน่ใจว่าโค้ดของคุณตรงกับรายการต่อไปนี้:

    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. บันทึกการเปลี่ยนแปลงไปยังไฟล์ Program.cs ของคุณ แล้วเรียกใช้แอปพลิเคชัน

    คุณควรเห็นผลลัพธ์ต่อไปนี้:

    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.
    

สรุป

นี่คือบางสิ่งที่ต้องจําเกี่ยวกับ foreach คําสั่งและค่าที่เพิ่มขึ้นที่คุณเรียนรู้ในหน่วยนี้:

  • ใช้คําสั่ง foreach เพื่อทําซ้ําคําสั่งผ่านแต่ละองค์ประกอบในอาร์เรย์ โดยดําเนินการบล็อกรหัสที่เกี่ยวข้องหนึ่งครั้งสําหรับแต่ละองค์ประกอบในอาร์เรย์
  • คําสั่ง foreach จะตั้งค่าขององค์ประกอบปัจจุบันในอาร์เรย์ เป็นตัวแปรชั่วคราวซึ่งคุณสามารถใช้ในเนื้อความของบล็อกรหัส
  • ใช้ตัว ++ ดําเนินการเพิ่มเพื่อเพิ่ม 1 ไปยังค่าปัจจุบันของตัวแปร