Code C++ chèn thêm dòng cho ma trận 2 chiều bị lỗi

em không hiểu sao dòng cuối cùng cứ bị lỗi ạ!

#include <iostream>

using namespace std;

int main()
{
	int m,n,a[20][20];
	int d;
	cout<<"Nhap so hang cua ma tran: ";
	cin>>m;
	
	cout<<"Nhap so cot cua ma tran: ";
	cin>>n;
	
	//Nhap ma tran
	for ( int i = 1; i <= m ; i ++)
	{
		for (int j = 1; j <= n ; j ++)
		{
			cout<<"Nhap gia tri cua a["<<i<<j<<"] : ";
			cin>>a[i][j];
		}
	}
	//chen dong
	cout<<"Nhap d de chen dong: ";
	cin>>d;
	
	if(d>=0 &&d<n)
    {
        for(int i = m ; i > d; i--)
            for(int j = 1; j <= n ; j++)
                a[i][j] = a[i-1][j];
        m++;
        for(int j = 1;j <= n; j++)
        {
            cout<<"nhap phan tu "<<d<<j<<" :";
            cin>>a[d][j];
        }
    }
    //xuat ma tran sau khi chen
    cout<<"Ma tran sau khi chen dong la: \n";
    
	for (int i = 1; i <= m ; i ++)
	{
		for (int j = 1; j <= n ; j ++)
		{
			cout<<a[i][j]<<"\t";
		}
		cout<<endl;
	}
}

bạn có đọc và dịch thông báo lỗi chưa mà đòi hiểu?

5 Likes

không phải là lỗi chương trình mà khi chạy nó không thêm giá trị vào dòng cuối cùng ý ạ

tại mảng bắt đầu từ 0 nha

3 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?