Lồng vòng lặp phải ứng dụng và hiểu bản chất như thế nào?

em xin chào các anh chị, em là người mới đang tự học code. Em có mò mẫm về lồng vòng lặp nhưng em không hiểu cách ứng dụng và bản chất của nó. Anh chị có thể chỉ cho em hiểu được không ạ? em xin cám ơn anh chị nhiều.

Ứng dụng điển hình nhất của lồng các vòng lặp là em đang tương tác, duyệt một loại dữ liệu nhiều chiều hoặc xử lý đồng thời trên nhiều mảng dữ liệu.

Ví dụ cụ thể:
Em kiểm tra trên bàn cờ vua những ô nào đang có quân cờ.
Bàn cờ vua sẽ là hình vuông 8x8, giống như một loại dữ liệu 2 chiều mà mỗi ô được truy cập theo cột và hàng.
Một vòng lặp để em quét hết các cột, một vòng lặp khác để quét các hàng. Và chúng lồng vào nhau để quét hết cả bàn cờ.

3 Likes

Bạn tìm hiểu loop invariant, implement của nó là loop statement và break, các lệnh while, do while, for dựa trên loop statement.

Riêng loop invariant bắt nguồn từ Mathematical Induction (quy nạp), chỉ thêm phần chứng minh termination. Induction chỉ có base step và induction step.

3 Likes

mang[j][i]: giống cái bảng j hàng i cột

j 
↓  
1 [_][_][_][_][_]
2 [_][_][_][_][_]
3 [_][_][_][_][_]
4 [_][_][_][_][_]
..[1][2][3][4][5] i →
foreach (hàng : bảng){ //duyệt hàng
    foreach (ô : hàng){ //duyệt ô
         //làm gì đó với giá trị của ô
    }
}
--------------------- tương đương-------------------------
lấy từng hàng từ bảng {
      lấy từng ô từ hàng {
            //làm gì đó với ô
      }
}
3 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?