C# - C Sharp: Vòng lặp lồng

Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực

Việc đặt một vòng lặp bên trong một vòng lặp khác thì gọi là vòng lặp lồng. Ví dụ, một vòng lặp while có thể được đặt trong vòng lặp do-while và một vòng lặp for có thể được đặt trong một vòng lặp while hoặc một vòng lặp for khác. Khi ta lồng hai vòng lặp, thì vòng lặp ngoài sẽ điều khiển số lần thực thực thi của vòng lặp bên trong. Cụ thể là với mỗi lần lặp của vòng lặp for ngoài thì vòng lặp bên trong sẽ được thực thi cho đến khi phần điều kiện của nó trở thành sai.

Số mức lồng nhau của các loại vòng lặp là không giới hạn. Trong thực tế thì ta hay bắt gặp sự lồng nhau của các vòng lặp for.

Đoạn mã 7 thể hiện việc sử dụng vòng lặp for lồng để hiển thị một mẫu.

Đoạn mã 7:

namespace Demo1
{
  internal class demo1
  {
    static void Main(string[] args)
    {
      //Vòng lặp for ngoài thực thi 5 lần
      for (int row = 1; row <= 5; row++)
      {
        // Mỗi lần lặp for ngoài thì vòng lặp for trong sẽ lặp row lần

        for (int col = 1; col <= row; col++)
        {
          Console.Write(" * ");
        } //Kết thúc vòng lặp for trong

        Console.WriteLine();

      } //Kết thúc vòng lặp for ngoài
    }
  }
}

Phân tích đoạn mã: vòng lặp for ngoài bắt đầu với biến đếm row được khởi tạo giá trị ban đầu là 1. Giá trị trong row sẽ tăng dần qua câu lệnh row++ cho đến khi row > 5. Thân của vòng lặp for ngoài chứa vòng lặp for trong, trong đó biến đếm col được khởi tạo giá trị ban đầu là 1. Vòng lặp for trong sẽ được thực thi cho đến khi col > row.

Mỗi khi thực hiện xong vòng lặp for bên trong thì quyền điều khiển lại chuyển ra thành phần thứ 3 của vòng lặp for ngoài để tăng biến đếm row 1 đơn vị, rồi chuyển sang thành phần thứ 2 để kiểm tra điều kiện, nếu điều kiện đúng thì tiếp tục thực hiện vòng lặp for trong.

Output của đoạn mã trên như sau:

 *
 *  *
 *  *  *
 *  *  *  *
 *  *  *  *  *
» Tiếp: break và continue
« Trước: Vòng lặp for và foreach
Các khóa học qua video:
Python SQL Server PHP C# Lập trình C Java HTML5-CSS3-JavaScript
Học trên YouTube <76K/tháng. Đăng ký Hội viên
Viết nhanh hơn - Học tốt hơn
Giải phóng thời gian, khai phóng năng lực
Copied !!!