Đường chéo chính và đường chéo phụ trong mảng hai chiều?

Cập nhật ngày 17/08/2022 bởi mychi

Bài viết Đường chéo chính và đường chéo phụ trong mảng hai chiều? thuộc chủ đề về Giải Đáp thời gian này đang được rất nhiều bạn quan tâm đúng không nào !! Hôm nay, Hãy cùng Viết Văn tìm hiểu Đường chéo chính và đường chéo phụ trong mảng hai chiều? trong bài viết hôm nay nhé ! Các bạn đang xem chủ đề về : “Đường chéo chính và đường chéo phụ trong mảng hai chiều?”

Như tiêu đề, mình đang bắt đầu học c++ và không hiểu đường chéo chính và đường chéo phụ trong mảng của C++ là gì.
Mong ai đã học qua và hiểu phần này giải thích cho mình!!! :smile:

Đỏ là chính
image

 #include <iostream> using namespace std; main() n > 10); for( i = 1; i <= n; i++) for(j = 1; j <= n; j++) cout << "Nhap a["<<i<<","<<j<<"] = "; cin >> a[i][j]; for(i = 1; i <= n; i++) for(j = 1; j <= n; j++) cout << a[i][j] << " "; cout << endl; //Cho biet co bao nhieu phan tu co phan nguyen la chan d = 0; for(i = 1; i <= n; i++) for(j = 1; j <= n; j++) if(int(a[i][j]) % 2 == 0) d++; cout << "Co "<< d << " p.tu co phan nguyen la chan" << endl; //Cac phan tu nam tren duong cheo chinh cout << "=====================================" << endl; cout << "cac phan tu nam tren duong cheo chinh : "; for(i= 1; i <= n; i++) cout << float(a[i][i])<< " "; cout << endl; s = 0; for(i = 1; i <= n; i++) // 2 for(j = 1; j <= n; j++) if(i+j == n + 1) s = s + a[i][j]; cout << "Tong cac phan tu tren duong cheo phu la: " << s << endl; 

-Giải thích hộ mình đoạn code này được không? :grinning:

 s = 0; for(i = 1; i <= n; i++) // 2 for(j = 1; j <= n; j++) if(i+j == n + 1) s = s + a[i][j]; cout << "Tong cac phan tu tren duong cheo phu la: " << s << endl;

Mảng 2 chiều = Ma trận cấp NxM
Ma trận vuông có các phần tử trên đường chéo chính = Ai,i 0<= i < n
Đường chéo phụ là Ai,n-i với 0<= i < n

Đọc thêm (có code hướng dẫn):

https://docs.google.com/document/d/1CW4xhoV4slt_fUlA0oz15caOvsiymurX-0AmAR2PcyY/edit?hl=vi

Giải thích hộ em đoạn code này được không anh?

 s = 0; for(i = 1; i <= n; i++) // 2 for(j = 1; j <= n; j++) if(i+j == n + 1) s = s + a[i][j]; cout << "Tong cac phan tu tren duong cheo phu la: " << s << endl;

Vẽ ma trận ra giấy, ghi chỉ số dòng cột i,j
Nhìn chéo phụ từ góc trên-phải xuống góc dưới-trái sẽ thấy i tăng và j giảm
Có thể dùng 1 vòng lặp

Do các phân tử của đường chéo phụ có các tọa độ là (i, n-i)
-> giả sử n-i = j
-> i+j = i + n – i = n
mà ở trên do i,j chạy từ 1 -> n nên phải = n+1
Làm vậy để chạy 2 vòng for thôi :blush:

Cám ớn mọi người!!! :grinning:

i+j=n-1 nha bạn, chăc ad viet nhầm thui

Thực ra đường chéo chính (i = j) của ma trận mới có ý nghĩa quan trọng cần nhớ :slight_smile: còn đường phụ thì chả biết đặt ra làm gì.
Cho dễ nhớ thì đường chéo phụ bắt đầu từ (0, n-1) trở xuống.

có thể dùng cách này nè
s=0
cho vòng lặp for chạy từ 0 đến dòng ( cột ) -1
s = s+ a[i][dong – i -1]
rồi in kết quả ra màn hình



Các câu hỏi về đường chéo phụ là gì


Nếu có bắt kỳ câu hỏi thắc mắt nào vê đường chéo phụ là gì hãy cho chúng mình biết nhé, mõi thắt mắt hay góp ý của các bạn sẽ giúp mình cải thiện hơn trong các bài sau nhé <3 Bài viết đường chéo phụ là gì ! được mình và team xem xét cũng như tổng hợp từ nhiều nguồn. Nếu thấy bài viết đường chéo phụ là gì Cực hay ! Hay thì hãy ủng hộ team Like hoặc share. Nếu thấy bài viết đường chéo phụ là gì rât hay ! chưa hay, hoặc cần bổ sung. Bạn góp ý giúp mình nhé!!

Các Hình Ảnh Về đường chéo phụ là gì


Các hình ảnh về đường chéo phụ là gì đang được chúng mình Cập nhập. Nếu các bạn mong muốn đóng góp, Hãy gửi mail về hộp thư [email protected] Nếu có bất kỳ đóng góp hay liên hệ. Hãy Mail ngay cho tụi mình nhé

Tham khảo kiến thức về đường chéo phụ là gì tại WikiPedia

Bạn hãy tìm thêm nội dung chi tiết về đường chéo phụ là gì từ trang Wikipedia tiếng Việt.◄ Tham Gia Cộng Đồng Tại

???? Nguồn Tin tại: https://vietvan.vn/hoi-dap/

???? Xem Thêm Chủ Đề Liên Quan tại : https://vietvan.vn/hoi-dap/

Related Posts

About The Author

Add Comment