Từ 1 tới 6 trên tổng số 6 kết quả

Đề tài: Hợp 2 ma trận

  1. #1
    Ngày gia nhập
    10 2011
    Nơi ở
    Nam Định
    Bài viết
    12

    Mặc định Hợp 2 ma trận

    Chào cả nhà! cho mình hỏi vấn đề này với. Mình có 2 ma trận nhập vào, rùi tìm hợp của 2 ma trận đó(giống như hợp của các tập hợp ý). Bài thì k báo lỗi mà lại k hiển thị được ma trận hợp ra. Làm ơn chỉ lỗi cho mình với, cám ơn các bạn!
    Attached Files Attached Files

  2. #2
    Ngày gia nhập
    07 2011
    Bài viết
    59

    chưa hiểu khái niệm hợp hai ma trận cho lắm, bạn nói rỏ hơn về phép hợp này được không?

  3. #3
    Ngày gia nhập
    10 2011
    Nơi ở
    Nam Định
    Bài viết
    12

    không biết khái niệm này có không nữa, nhưng ý minh là như thế này:
    ma trận A:
    1 2 3
    4 5 6
    7 1 4
    1 2 3
    ma trận B:
    7 8 5
    1 2 3
    ->ma trận kết quả là:
    1 2 3
    4 5 6
    7 1 4
    7 8 5
    bạn có biết thì giúp mình với, mình đang phải làm về các phép toán đại số quan hệ.cám ơn bạn!

  4. #4
    Ngày gia nhập
    10 2011
    Bài viết
    9

    Trích dẫn Nguyên bản được gửi bởi kokoromap Xem bài viết
    không biết khái niệm này có không nữa, nhưng ý minh là như thế này:
    Ma trận a:
    1 2 3
    4 5 6
    7 1 4
    1 2 3
    ma trận b:
    7 8 5
    1 2 3
    ->ma trận kết quả là:
    1 2 3
    4 5 6
    7 1 4
    7 8 5
    bạn có biết thì giúp mình với, mình đang phải làm về các phép toán đại số quan hệ.cám ơn bạn!
    mình nghĩ là bạn nên lấy mỗi hàng của ma trận b (hay a) đưa vào ma trận a (hay b).

    Với lần lấy như vậy bạn sẽ lấy bằng chuổi và so sánh với tất cả các hàng trong ma trận cần đưa vào. Nếu trùng thì thôi , nếu không trùng thì bạn tăng số hàng của ma trận và đưa vào nhé .

    Phép so sánh chuổi strcmp(a,b)==0 là trùng đó bạn. ( với a,b là 2 chuổi).
    TRÊN CON ĐƯỜNG ĐI ĐẾN THÀNH CÔNG KHÔNG CÓ DẤU CHÂN CỦA KẺ LƯỜI BIẾNG !!

    KHI ĐÃ THÀNH CÔNG THÌ ĐỪNG NÊN NGỦ QUÊN TRÊN CHIẾN THẮNG :

  5. #5
    Ngày gia nhập
    07 2011
    Bài viết
    59

    Theo ví dụ bạn đưa ra thì mình đoán là hai ma trận A và B phải có cùng số cột. Ma trận kết quả có thể là ma trận A cộng thêm những dòng của ma trận B mà không nằm trong ma trận A.
    Sửa thử lại code của bạn như sau:
    C++ Code:
    1. #include<stdio.h>
    2. #include"conio.h"
    3. #include"iostream.h"
    4.  struct mt
    5.  {
    6.      int n,m;
    7.      int a[100][10];
    8.  };
    9.  void nhap(mt &x)
    10.  {
    11.     int i,j;
    12.     for(i=0;i<x.n;i++)
    13.     for(j=0;j<x.m;j++)
    14.     {
    15.       printf("nhap a[%d][%d]: ",i+1,j+1);
    16.       scanf("%d",&x.a[i][j]);
    17.     }
    18.  }
    19.   void ht(mt x)
    20.  {
    21.        int i,j;
    22.        for(i=0;i<x.n;i++)
    23.        {
    24.             for(j=0;j<x.m;j++)
    25.             printf("%3d",x.a[i][j]);
    26.             printf("\n");
    27.        }
    28.  }
    29.  /*
    30. int ktra(mt &x1, mt &x2, int vt1, int vt2)
    31.  {
    32.     int j,kt;
    33.     kt=0;
    34.     for(j=0;j<x1.n;j++)
    35.     {
    36.       if(x1.a[vt1][j] != x2.a[vt2][j])
    37.      kt=1;
    38.     }
    39.     return kt;
    40.  }
    41. void hopmt(mt x1, mt x2, mt h)
    42. {
    43.     int i,j,k;int kt;
    44.     for(i=0;i<x1.n;i++)
    45.         for(j=0;j<x1.m;j++)
    46.             h.a[i][j] = x1.a[i][j];
    47.     h.n =x1.n;
    48.     for(i=0;i<x2.n;i++)
    49.     {
    50.       kt =0;
    51.       for(j=0;j<x1.n;j++)
    52.       {
    53.         if (ktra(x1,x2,i,j) == 1)
    54.         {
    55.         kt =1;
    56.         }
    57.         if (kt == 0)
    58.         {
    59.           h.n =h.n+1;
    60.           for (k=0;k<h.m;k++)
    61.           h.a[h.n][k] = x2.a[i][k];
    62.         }
    63.       }
    64.     }
    65. }*/
    66.  
    67. void hopmt(mt x1, mt x2, mt &h)
    68. {
    69.     int i, j, t, kt1 = 0, kt2 = 0;;
    70.     //copy ma tran 1 qua ma tran hop
    71.     h.m = x1.m;
    72.     h.n= x1.n;
    73.     for(i = 0;i < x1.n; i++){
    74.         for(j = 0; j <x1.m; j++){
    75.             h.a[i][j] = x1.a[i][j];
    76.         }
    77.     }
    78.    
    79.     //so sanh ma tran 2 va ma tran 1 neu khong trung thi cong tiep vao ma tran hop
    80.    
    81.     for(i = 0; i < x2.n; i++){
    82.         kt1 = 0;
    83.         kt2 = 0;
    84.         //so sanh dong thu i cua ma tran 2 voi cac dong cua ma tran 1
    85.         for(j = 0; j < x1.n; j++){
    86.             for(t = 0; t < x1.m; t++){
    87.                 if(x2.a[i][t] == x1.a[j][t]){
    88.                     kt1 = 1;
    89.                 }
    90.                 kt2 += kt1;
    91.             }
    92.         }
    93.         //neu ko trung voi dong nao thi copy qua ma tran hop
    94.         if(kt2 != x1.m){
    95.             for(t = 0; t < x1.m; t++){
    96.                 h.a[h.n][t] = x2.a[i][t];
    97.             }
    98.             (h.n)++;
    99.         }
    100.     }
    101. }
    102.  
    103.  
    104.  void main()
    105.  {   mt a,b,h;
    106.       printf("NHAP MA TRAN THU NHAT:\n");
    107.       printf("Nhap n:");scanf("%d",&a.n);
    108.       printf("Nhap m:");scanf("%d",&a.m);
    109.       nhap(a);ht(a);
    110.  
    111.       printf("NHAP MA TRAN THU HAI:\n");
    112.       printf("Nhap n:");scanf("%d",&b.n);
    113.       printf("Nhap m:");scanf("%d",&b.m);
    114.       nhap(b);ht(b);
    115.       hopmt(a,b,h);
    116.       printf("\nMa tran hop:\n");
    117.       ht(h);
    118.  getch();
    119. }
    Đã được chỉnh sửa lần cuối bởi maitan_10000 : 25-10-2011 lúc 12:21 AM.

  6. #6
    Ngày gia nhập
    10 2011
    Nơi ở
    Nam Định
    Bài viết
    12

    Mặc định Hợp 2 ma trận

    cám ơn mọi người đã nhiệt tình giúp đỡ

Các đề tài tương tự

  1. Trao đổi liên kết, trao doi logo, Text Link với các webforumblog (free)
    Gửi bởi nguyenlam14990 trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 31
    Bài viết cuối: 13-03-2012, 11:53 PM

Quyền hạn của bạn

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