[C++] Nhân ma trận vuông cấp n với một vector a cấp n

Thảo luận trong 'Visual C++' bắt đầu bởi Trần Văn Cường, 13/6/16.

  1. Trần Văn Cường

    Trần Văn Cường I love CNTT Thành viên BQT Thành viên BQT

    Tham gia ngày:
    8/11/15
    Bài viết:
    3,693
    Đã được thích:
    43
    Điểm thành tích:
    48
    Giới tính:
    Nam
    Nghề nghiệp:
    Sinh Viên
    Nơi ở:
    Quảng Ninh thân yêu!
    Web:

    Xây dựng lớp ma trận và lớp vector (lớp vector được mô tả như phần trên có dùng mảng số thực để lưu trữ. Nếu dùng mảng thì không cần xây dựng các hàm khởi tạo, hủy). Viết chương trình nhập vào một vector a cấp n và một ma trận vuông b cấp n thực hiện phép nhân vector a với ma trận b. Sử dụng hàm bạn để hiển thị và tính vector với ma trận.

    Phần mềm sử dụng: Visual Studio

    nhan-ma-tran-vuong-cap-n-voi-mot-vector-a-cap-n.gif

    Code

    CODE:
    Select All
    #include <iostream>
    using namespace std;
    #define max 10
    int n;
    class 
    matran
    {
    private:
        
    int mt[max][max];
    public:
        
    matran()
        {
            for (
    int i 1<= ni++)
            {
                for (
    int j 1<= nj++)
                {

                    
    mt[i][j] = 0;
                }
            }
        }
        
    void nhapslmt()
        {
            
    cout << endl;
            for (
    int i 1<= ni++)
            {
                for (
    int j 1<= nj++)
                {

                    
    cout << "Ma tran thu [" << << "][" << << "]: ";
                    
    cin >> mt[i][j];
                }
            }
            
    cout << endl;
        }
        
    void insl()
        {
            for (
    int i 1<= ni++)
            {
                for (
    int j 1<= nj++)
                {
                    
    cout << mt[i][j] << " ";
                }
                
    cout << endl;
            }
        }
        
    friend matran nhan(matran a)
        {
            
    matran c;
            
    float v[max];
            
    cout << "\nNhap vector:\n";
            for (
    int j 1<= nj++)
            {
                
    cout << "v[" << << "]: ";
                
    cin >> v[j];
            }
            for (
    int i 1<= ni++)
            {
                for (
    int j 1<= nj++)
                {
                    
    c.mt[i][j] += a.mt[i][j] * v[j];
                }
            }
            return 
    c;
        }
    };
    void main()
    {
        
    matran ac;
        
    cout << "nhap cap cua ma tran: ";
        
    cin >> n;
        
    cout << "Nhap ma tran thu nhat:";
        
    a.nhapslmt();

        
    system("cls");
        
    cout << "\n Ma tran A:\n";
        
    a.insl();
        
    nhan(a);
        
    cout << "\n nhan ma tran A va vector B:\n";
        
    c.insl();
        
    system("pause");
    }
     

    Bình Luận Bằng Facebook

    data-href="https://cnttqn.com/threads/c-nhan-ma-tran-vuong-cap-n-voi-mot-vector-a-cap-n.2132.html"