User Tag List

+ Trả lời chủ đề
Trang 1/4 123 ... CuốiCuối
Hiện kết quả từ 1 tới 10 của 31

Chủ đề: Vài ngày làm một bài tập C/C++

  1. #1
    .:: Grumpy svBKer ::. Avatar của 1973
    Tham gia ngày
    Mar 2010
    Bài gửi
    3.793

    Icon10 Vài ngày làm một bài tập C/C++

    Mình lập chủ đề này để đưa ra các bài tập cho các bạn cùng giải, cách giải có thể nhanh chóng tìm ra nhưng cách giải tối ưu thì không phải ai cũng tìm ra ngay được. Vì vậy vài ngày chúng ta sẽ đưa ra một bài lập trình rồi mọi người cùng giải, yêu cầu đặt ra là làm sao cho thuật toán tối ưu nhất.

    Nào, bây giờ chúng ta bắt đầu với 3 bài sau:

    Bài 1: Nhân 2 ma trận bất kì
    Bài 2: Tính định thức ma trận cấp n
    Bài 3: Biến đổi 1 ma trận cấp n về ma trận bậc thang.

    Mời mọi người
    Contact me:
    Email: sangnd [at] svBK.vn
    Personal website: My Blog | Chat với người lạ
    Facebook Page của Bách Khoa Forum: http://www.facebook.com/svbk.vn

  2. Có 4 thành viên cảm ơn bài viết của 1973 có chất lượng:


  3. #2
    svBK's Member
    Tham gia ngày
    Feb 2012
    Bài gửi
    26

    Mặc định Re: Vài ngày làm một bài tập C/C++

    có vẻ anh em quan tâm nhiều đến C nhỉ, thấy mấy box khác nhìn vắng tanh @@

  4. #3
    NV xóa quảng cáo - Spam Avatar của lampsea12
    Tham gia ngày
    May 2011
    Bài gửi
    577

    Mặc định Re: Vài ngày làm một bài tập C/C++

    Ma trận ah! Lại phải xem lại đại số, cho đề khác đi @1973
    A true Blue......

  5. #4
    Điều hành viên Avatar của iexplore
    Tham gia ngày
    Sep 2010
    Bài gửi
    208

    Mặc định Re: Vài ngày làm một bài tập C/C++

    Mở hàng làm bài 1 trước, chương trình không được tối ưu cho lắm ;p

    PHP Code:
    // Chuong trinh nhan 2 ma tran co kich thuoc m x n va n x p
    #include <iostream>
    #include <stdio.h>
    #define MAX 100
    using namespace std;
    class 
    MT
    {
        private:
            
    int hcA[MAX][MAX];
        public:
            
    int getKT(int i// lay kich thuoc cua ma tran
            
    {
                if (
    i==1
                    return 
    h;
                else
                    if (
    i==2) return c;
                return 
    0;
            }
            
    void sethc(int h1int c1// dat kich thuoc cho ma tran
            
    {
                
    h1c1;
            }
            
    void setA(int h1int c1int s1// dat gia tri s1 cho phan tu hang h1 cot c1
            
    {
                
    A[h1][c1] = s1;
            }
            
    int getA(int h1int c1// lay gia tri ma tran o phan tu hang h1 cot c1
            
    {
                return 
    A[h1][c1];
            }
            
    void nhapMT()
            {
                
    cout << "\nNhap so hang va cot cua ma tran: ";
                
    cin >> >> c;
                
    cout << "Nhap cac phan tu cua ma tran: \n";
                for (
    int i=0i<hi++)
                    for (
    int j=0j<cj++)
                    {
                        
    printf("A[%d][%d] = "ij);
                        
    cin >> A[i][j];
                    }
            }
            
    void inMT()
            {
                
    cout << "\n-----------------------\n";
                for (
    int i=0i<hi++)
                {
                    for (
    int j=0j<cj++) 
                        
    cout << A[i][j] << " ";
                    
    cout << endl;
                }
            }
            
    friend MT nhanMT(MT m1MT m2)
            {
                
    MT temp;
                
    temp.sethc(m1.hm2.c);
                for (
    int i=0i<m1.hi++)
                    for (
    int j=0j<m2.cj++)
                    {
                        
    int s 0;
                        for (
    int k=0k<m1.ck++)
                            
    += m1.getA(ik) * m2.getA(kj);
                        
    temp.setA(ijs);
                    }
                return 
    temp;
            }
    };

    int main()
    {
        
    MT m1m2m;
        
    m1.nhapMT();
        
    m2.nhapMT();
        
    cout << "Hai ma tran vua nhap la: ";
        
    m1.inMT();
        
    m2.inMT();
        if (
    m1.getKT(2) != m2.getKT(1)) 
            
    printf("\nKhong the nhan 2 man tran co kich thuoc %d x %d va %d x %d\n"m1.getKT(1), m1.getKT(2), m2.getKT(1), m2.getKT(2));
        else
            {
                
    nhanMT(m1m2);
                
    cout << "Ket qua cua phep nhan hai ma tran tren: ";
                
    m.inMT();
            }
        return 
    0;


  6. #5
    HUT's Student Avatar của BoyMauLanh
    Tham gia ngày
    Oct 2010
    Bài gửi
    105

    Mặc định Re: Vài ngày làm một bài tập C/C++

    Đặt cục gạch ở đây, mai quay lại bàn luận với các bác, nay muộn quá rồi

  7. #6
    Điều hành viên Avatar của acupcoffeelove
    Tham gia ngày
    Jul 2010
    Bài gửi
    181

    Mặc định Re: Vài ngày làm một bài tập C/C++

    2pic này hay đó min.... lúc nào rảnh làm chơi :

  8. #7
    svBK's Member
    Tham gia ngày
    Dec 2011
    Bài gửi
    39

    Mặc định Re: Vài ngày làm một bài tập C/C++

    ko chạy đc..........
    Quote Nguyên văn bởi iexplore Xem bài viết
    Mở hàng làm bài 1 trước, chương trình không được tối ưu cho lắm ;p

    PHP Code:
    // Chuong trinh nhan 2 ma tran co kich thuoc m x n va n x p
    #include <iostream>
    #include <stdio.h>
    #define MAX 100
    using namespace std;
    class 
    MT
    {
        private:
            
    int hcA[MAX][MAX];
        public:
            
    int getKT(int i// lay kich thuoc cua ma tran
            
    {
                if (
    i==1
                    return 
    h;
                else
                    if (
    i==2) return c;
                return 
    0;
            }
            
    void sethc(int h1int c1// dat kich thuoc cho ma tran
            
    {
                
    h1c1;
            }
            
    void setA(int h1int c1int s1// dat gia tri s1 cho phan tu hang h1 cot c1
            
    {
                
    A[h1][c1] = s1;
            }
            
    int getA(int h1int c1// lay gia tri ma tran o phan tu hang h1 cot c1
            
    {
                return 
    A[h1][c1];
            }
            
    void nhapMT()
            {
                
    cout << "\nNhap so hang va cot cua ma tran: ";
                
    cin >> >> c;
                
    cout << "Nhap cac phan tu cua ma tran: \n";
                for (
    int i=0i<hi++)
                    for (
    int j=0j<cj++)
                    {
                        
    printf("A[%d][%d] = "ij);
                        
    cin >> A[i][j];
                    }
            }
            
    void inMT()
            {
                
    cout << "\n-----------------------\n";
                for (
    int i=0i<hi++)
                {
                    for (
    int j=0j<cj++) 
                        
    cout << A[i][j] << " ";
                    
    cout << endl;
                }
            }
            
    friend MT nhanMT(MT m1MT m2)
            {
                
    MT temp;
                
    temp.sethc(m1.hm2.c);
                for (
    int i=0i<m1.hi++)
                    for (
    int j=0j<m2.cj++)
                    {
                        
    int s 0;
                        for (
    int k=0k<m1.ck++)
                            
    += m1.getA(ik) * m2.getA(kj);
                        
    temp.setA(ijs);
                    }
                return 
    temp;
            }
    };

    int main()
    {
        
    MT m1m2m;
        
    m1.nhapMT();
        
    m2.nhapMT();
        
    cout << "Hai ma tran vua nhap la: ";
        
    m1.inMT();
        
    m2.inMT();
        if (
    m1.getKT(2) != m2.getKT(1)) 
            
    printf("\nKhong the nhan 2 man tran co kich thuoc %d x %d va %d x %d\n"m1.getKT(1), m1.getKT(2), m2.getKT(1), m2.getKT(2));
        else
            {
                
    nhanMT(m1m2);
                
    cout << "Ket qua cua phep nhan hai ma tran tren: ";
                
    m.inMT();
            }
        return 
    0;


  9. #8
    svBK's Member
    Tham gia ngày
    Dec 2011
    Bài gửi
    39

    Mặc định Re: Vài ngày làm một bài tập C/C++

    à chạy đc rồi,hjhj...................

  10. #9
    Điều hành viên Avatar của iexplore
    Tham gia ngày
    Sep 2010
    Bài gửi
    208

    Mặc định Re: Vài ngày làm một bài tập C/C++

    Quote Nguyên văn bởi 1102G Xem bài viết
    ko chạy đc..........
    Quote Nguyên văn bởi 1102G Xem bài viết
    à chạy đc rồi,hjhj...................
    hai bài viết liền nhau, nguy hiểm thật

  11. #10
    .:: Grumpy svBKer ::. Avatar của 1973
    Tham gia ngày
    Mar 2010
    Bài gửi
    3.793

    Mặc định Re: Vài ngày làm một bài tập C/C++

    Bài này @iexplore dùng hướng đối tượng nên khó đọc quá . Về thuật toán thì không có gì đặc biệt.

    @lampsea12: ma trận sẽ phải đụng chạm tới nhiều nên cậu cố gắng xem lại đi, cái này google không thiếu tài liệu.

    @acupcoffeelove: viện Điện cũng chơi cái này à? Xin mời!

    @BoyMauLanh: đặt gạch được 3 ngày rồi mà chưa thấy nhặt lên nhỉ?

+ Trả lời chủ đề
Trang 1/4 123 ... CuốiCuối

Thông tin chủ đề

Users Browsing this Thread

Hiện có 1 người đọc bài này. (0 thành viên và 1 khách)

Từ khóa (Tag) của chủ đề này

Quyền viết bài

  • Bạn không thể gửi chủ đề mới
  • Bạn không thể gửi trả lời
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình


About svBK.VN

    Bách Khoa Forum - Diễn đàn thảo luận chung của sinh viên ĐH Bách Khoa Hà Nội. Nơi giao lưu giữa sinh viên - cựu sinh viên - giảng viên của trường.

Follow us on

Twitter Facebook youtube