01/10/2018, 13:25
Mong anh chi giải thích dùm em cấu trúc lặp trong đoạn code này ạ
int s = 0;
for(int i=0; i<m; i++) {
s = s + a[0][i];
for(int i=1; i<n; i++) {
s = s + a[i][0];
for(int i=1; i<m; i++) {
s = s + a[n-1][i];
for(int i=1; i<n-1; i++) {
s = s + a[i][m-1];
printf("
s=%d", s);
}
}
}
}
Đoạn code này tính tổng các biên của mảng
Ví dụ cho đoạn input
4 5
1 5 6 8 9
2 3 4 5 6
13 11 7 10 12
101 9 16 8 3
em chỉ biết rằng
for(int i=0;i<m;i++)
s=s+a[0][i];
là 1 5 6 8 vì code thử từng vòng lặp chứ không hiểu tại sao là a[0][i] và xuất phát từ i=0
mấy vòng lặp sau em cũng ko hiểu tương tự ạ
Bài liên quan
Code này tính tổng phần tử ở viền theo thứ tự trên - trái - dưới - phải và cũng dễ lỗi nữa. Mình thì mình sẽ cộng theo từng dòng.
cái này ở biên mà sao cộng từng dòng đc bạn
Vậy viền trái phải gồm các phần tử nào?
Viền trái là: 2
13
101
Viền phải là 6
12
Nếu bạn hiểu vòng lặp tại sao lại code như vậy thì giải thích giúp mình nha
Mình đang hỏi chỉ số ấy
Code này compile cũng vẫn chạy hả bạn?