Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 11 kết quả

Đề tài: hệ 6 pt bậc nhất 6 ẩn

  1. #1
    Ngày gia nhập
    02 2008
    Bài viết
    3

    Mặc định hệ 6 pt bậc nhất 6 ẩn

    mình đang cần gấp code về giải hệ 6 phương trình bậc nhất 6 ẩn với.Tuần sau mình phải nộp bài tập lớn rồi hichic

  2. #2
    Ngày gia nhập
    03 2008
    Bài viết
    78

    - Mình nói bạn đừng phật lòng nhé :"bạn mới viết bài viết số 1 mà đã nhờ vả 1 câu rất ngắn gọn...Mình nói thế vì Nội Quy của Congdongcviet(nhất là các Mod) ko ưa kiểu " dùm " như vậy.Mình cũng là newbie nên nhắc bạn thôi mà...

    - Bài tập lớn của bạn chắc hẳn bạn đã có sự quan tâm nhất định rồi chứ, bạn suy nghỉ thế nào về nó, có làm đc jì chưa nhỉ?Thôi thì mình giúp bạn tí thôi.

    - Tiếp theo, cái này là một bài rất cơ bản trong Đại số tuyến tính(nếu đã học).Bạn sử dụng ma trận theo phương pháp khử Gauss hoặc Gauss - Jordan.

    - Trong đó nó có sẵn thuật toán rồi đó.Bạn cứ theo đó mà chuyển qua ngôn gữ lập trình thôi!
    - Mong bạn phản hồi và mình sẽ gởi cho bạn bài làm mẫu nhé.
    No way, No success..

  3. #3
    Ngày gia nhập
    02 2008
    Bài viết
    88

    Minh lại ko tin vào cái phương pháp Gauss - Jordan đó lắm vì hình như nó yêu cầu rằng phần tử trên đường chéo là lớn nhất thì phải (không nhớ rõ).
    Theo mình phương pháp tối ưu nhất để giải hệ phương trình n ẩn là.
    Biến ma trận hệ số thành ma trận tam giác trên và giải từ dưới lên.
    Gợi ý thôi và code thì tự viết
    Mình từ Caulacbovb qua)
    Giã từ VB6 đến với VB.Net, C# và Java.

  4. #4
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,750

    Trích dẫn Nguyên bản được gửi bởi redarmy Xem bài viết
    mình đang cần gấp code về giải hệ 6 phương trình bậc nhất 6 ẩn với.Tuần sau mình phải nộp bài tập lớn rồi hichic
    Bạn có biết cách giải: một hệ phương trình bậc nhất 6 ẩn, 6 pt không? Nếu bạn biết cách giải và trình bày được cách giải của mình lên đây, Dr sẽ code cho bạn? OK chứ?

    Tips: Nếu bạn thực hiện giải theo ma trận sẽ dễ hơn đó, thế nhé!
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  5. #5
    Ngày gia nhập
    11 2007
    Bài viết
    153

    Bạn cứ suy nghĩ bạn giải pt bậc nhất 3 ẩn như thế nào ? Rùi từ đó tìm ra cách giải cho n ẩn nha . Thử quan tâm xem sao .
    ttecak ?

  6. #6
    Ngày gia nhập
    09 2006
    Nơi ở
    /usr/share/.hack@
    Bài viết
    1,433

    Mặc định hệ 6 pt bậc nhất 6 ẩn

    Sách giáo khoa lớp 10 có công thức giải với n đó
    x(i) = D[x(i)] / D
    ...
    None!

  7. #7
    Ngày gia nhập
    01 2008
    Bài viết
    46

    Trích dẫn Nguyên bản được gửi bởi anhtuyenbk Xem bài viết
    Bản giaỉ cho mình xem đây, mình thấy no đâu có dễ
    um,bài làm hơi dài nhẩy
    Code:
    #include<stdio.h>
    #include<conio.h>
    float a[6],b[6],c[6],d[6],e[6],f[6],g[6];
    void buoc1(short int k,short int p)
    {
    float m;
    m=-(a[p]/a[k]);
    a[p]=0;
    b[p]+=b[k]*m;
    c[p]+=c[k]*m;
    d[p]+=d[k]*m;
    e[p]+=e[k]*m;
    f[p]+=f[k]*m;
    g[p]+=g[k]*m;
    }
    
    void buoc2(short int k,short int p)
    {
    float m;
    m=-(b[p]/b[k]);
    b[p]=0;
    c[p]+=c[k]*m;
    d[p]+=d[k]*m;
    e[p]+=e[k]*m;
    f[p]+=f[k]*m;
    g[p]+=g[k]*m;
    }
    
    void buoc3(short int k,short int p)
    {
    float m;
    m=-(c[p]/c[k]);
    c[p]=0;
    d[p]+=d[k]*m;
    e[p]+=e[k]*m;
    f[p]+=f[k]*m;
    g[p]+=g[k]*m;
    }
    
    void buoc4(short int k,short int p)
    {
    float m;
    m=-(d[p]/d[k]);
    d[p]=0;
    e[p]+=e[k]*m;
    f[p]+=f[k]*m;
    g[p]+=g[k]*m;
    }
    
    void buoc5(short int k,short int p)
    {
    float m;
    m=-(e[p]/e[k]);
    e[p]=0;
    f[p]+=f[k]*m;
    g[p]+=g[k]*m;
    }
     
    void main()
    {                                                                        
    short int i,k,p;
    float x[6];
    	for (i=0;i<6;++i)
    	  {
    	    printf("a[%i]=",i);
    	     scanf("%f",&a[i]);
    	    printf("b[%i]=",i);
    	     scanf("%f",&b[i]);
    	    printf("c[%i]=",i);
    	     scanf("%f",&c[i]);
    	    printf("d[%i]=",i);
    	     scanf("%f",&d[i]);
    	    printf("e[%i]=",i);
                 scanf("%f",&e[i]);
    	    printf("f[%i]=",i);
    	     scanf("%f",&f[i]);
    	    printf("g[%i]=",i);
                 scanf("%f",&g[i]);
    	  }
    	buoc1(0,1);buoc1(0,2);buoc1(0,3);buoc1(0,4);buoc1(0,5);
            buoc2(1,2);buoc2(1,3);buoc2(1,4);buoc2(1,5);
    	buoc3(2,3);buoc3(2,4);buoc3(2,5);
    	buoc4(3,4);buoc4(3,5);
    	buoc5(4,5);
    	
    	x[5]=g[5]/f[5];
    	x[4]=(g[4]-x[5]*f[4])/e[4];
    	x[3]=(g[3]-x[5]*f[3]-x[4]*e[3])/d[3];
    	x[2]=(g[2]-x[5]*f[2]-x[4]*e[2]-x[3]*d[2])/c[2];
    	x[1]=(g[1]-x[5]*f[1]-x[4]*e[1]-x[3]*d[1]-x[2]*c[1])/b[1];
    	x[0]=(g[0]-x[5]*f[0]-x[4]*e[0]-x[3]*d[0]-x[2]*c[0]-x[1]*b[0])/a[0];
    
            printf("\n%f %f %f %f %f %f",x[0],x[1],x[2],x[3],x[4],x[5]);
    getch();
    }

  8. #8
    Ngày gia nhập
    03 2008
    Bài viết
    78

    - Giải hệ PT tuyến tính có nhiều cách nhưng ai học ĐS Tuyến tính rồi thì chắc chắn có học 3 cách sau
    + Phương pháp khử ma trận bằng PP Gauss or Gauss - Jordan.
    + Phương pháp sử dụng ma trận nghịch đảo.
    + Phương pháp sử dụng định thức.
    Ngoài ra còn có Pp khử của Cholcheski nhưng mà tui chưa đc học.

    Minh lại ko tin vào cái phương pháp Gauss - Jordan đó lắm vì hình như nó yêu cầu rằng phần tử trên đường chéo là lớn nhất thì phải (không nhớ rõ).
    Biến ma trận hệ số thành ma trận tam giác trên và giải từ dưới lên.
    Cái mà bạn nêu ra là ma trận tam giác trên chính là PP khử Gauss đó,còn jì nữa..bạn phải nhớ kĩ chớ.

    Đây là code:
    C Code:
    1. /* Giai he phuong trinh tuyen tinh bang phep khu GAUSS - JORDAN
    2. voi B va X la ma tran N x P */
    3. #include <stdio.h>
    4. #include <math.h>
    5.  
    6. #define MAX 10
    7. double A[MAX][MAX], B[MAX][MAX], X[MAX][MAX];
    8.  
    9. void gauss_jordan(int n, int p)
    10. {
    11.   int i=0, j, done=0, m, k;
    12.   double max, c;
    13.   printf("\nTinh nghiem cua he phuong trinh");
    14.   while (!done)
    15.   {
    16.     if (A[i][i] == 0)
    17.     {
    18.       max = 0;
    19.       m = i;
    20.       for (k=i+1; k<n; k++)
    21.         if (max < fabs(A[k][i]))
    22.         {
    23.           m = k;
    24.           max = fabs(A[k][i]);
    25.         }
    26.       if (m != i)
    27.       {
    28.         for (j=i; j<n; j++)
    29.         {
    30.           c = A[i][j];
    31.           A[i][j] = A[m][j];
    32.           A[m][j] = c;
    33.         }
    34.         for (j=0; j<p; j++)
    35.         {
    36.           c = B[i][j];
    37.           B[i][j] = B[m][j];
    38.           B[m][j] = c;
    39.         }
    40.       }
    41.       if (m == i)
    42.         done = 1;
    43.     }
    44.     if (A[i][i] != 0)
    45.     {
    46.       c = 1/A[i][i];
    47.       for (j=i; j<n; j++)
    48.         A[i][j] = A[i][j] * c;
    49.       for (j=0; j<p; j++)
    50.         B[i][j] = B[i][j] * c;
    51.       for (k=0; k<n; k++)
    52.         if (k != i)
    53.         {
    54.           c= A[k][i];
    55.           for (j=i; j<n; j++)
    56.             A[k][j] = A[k][j] - A[i][j]*c;
    57.           for (j=0; j<p; j++)
    58.             B[k][j] = B[k][j] - B[i][j] * c;
    59.         }
    60.     }
    61.     printf("\nLan khu hang %d", i);
    62.     for (k=0; k<n; k++)
    63.     {
    64.       printf("\n");
    65.       for (j=0; j<n; j++)
    66.         printf("%10.5lf", A[k][j]);
    67.       for (j=0; j<p; j++)
    68.         printf(" = %10.5lf", B[k][j]);
    69.     }
    70.     i++;
    71.     if (i>=n)
    72.       done = 1;
    73.   }
    74.   if (i >= n)
    75.     for (j=0; j<n; j++)
    76.       for (k=0; k<p; k++)
    77.         X[j][k] = B[j][k];
    78. }
    79.  
    80. void in_A(int n)
    81. {
    82.   int i, j;
    83.   printf("\nMa tran A :");
    84.   for (i=0; i<n; i++)
    85.   {
    86.     printf("\n");
    87.     for (j=0; j<n; j++)
    88.       printf("%10.5lf", A[i][j]);
    89.   }
    90. }
    91.  
    92. void in_B(int n, int p)
    93. {
    94.   int i, j;
    95.   printf("\nMa tran B :\n");
    96.   for (i=0; i<n; i++)
    97.   {
    98.     printf("\n");
    99.     for (j=0; j<p; j++)
    100.       printf("%10.5lf", B[i][j]);
    101.   }
    102. }
    103.  
    104. void in_X(int n, int p)
    105. {
    106.   int i, j;
    107.   printf("\nMa tran nghiem X :\n");
    108.   for (i=0; i<n; i++)
    109.   {
    110.     printf("\n");
    111.     for (j=0; j<p; j++)
    112.       printf("%10.5lf", X[i][j]);
    113.   }
    114. }
    115.  
    116. void main()
    117. {
    118.   int n, i, j, p;
    119.  
    120.   printf("Giai he phuong trinh tuyen tinh AX = B.");
    121.   printf("\nbang phuong phap khu GAUSS.");
    122.   printf("\nCho biet cap ma tran : ");
    123.   scanf("%d%*c", &n);
    124.   printf("\nCho biet cap ma tran B : ");
    125.   scanf("%d%*c", &p);
    126.   printf("\nNhap ma tran A :\n");
    127.   for (i=0; i<n; i++)
    128.     for (j=0; j<n; j++)
    129.     {
    130.       printf("A[%d][%d] = ", i, j);
    131.       scanf("%lf", &A[i][j]);
    132.     }
    133.   printf("\nNhap ma tran B :\n");
    134.   for (i=0; i<n; i++)
    135.     for (j=0; j<p; j++)
    136.     {
    137.       printf("B[%d][%d] = ", i, j);
    138.       scanf("%lf", &B[i][j]);
    139.     }
    140.   in_A(n);
    141.   in_B(n, p);
    142.   gauss_jordan(n, p);
    143.  
    144.   in_X(n, p);
    145.   getch();
    146. }
    No way, No success..

  9. #9
    Ngày gia nhập
    02 2008
    Bài viết
    3

    bác nào rỗi làm giúp em 1 chút nữa với.Em quên mất là hệ phương trình này giải cho cả số phức thì làm thế nào ạ.Thế phải viết code thế nào ạ

  10. #10
    Ngày gia nhập
    05 2007
    Bài viết
    21

    Ai rỗi đâu mà giúp toàn bộ chứ
    Hệ tuyến tính thì thử áp dụng phương pháp nhân tử LU
    Muốn giải số phức thì viết vài hàm tính toán số phức rồi cứ thế mà thay vào các phép tính

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

  1. Sửa máy tính, cài đặt windows, phần mềm tại nhà nhanh nhất, rẻ nhất, hiệu quả nhất …
    Gửi bởi hopluccc trong diễn đàn Giới thiệu website, sản phẩm của bạn
    Trả lời: 0
    Bài viết cuối: 08-07-2013, 02:07 PM
  2. Trả lời: 12
    Bài viết cuối: 25-10-2012, 02:48 AM
  3. Bài tập C++ NHập mảng một chiều gồm n phần tử kết thúc nhập khi nhập một chữ cái
    Gửi bởi thienthanoze trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 15
    Bài viết cuối: 09-07-2012, 10:10 PM
  4. Bài tập C++ Viết phương trình nhập vào 1 chuỗi số.Hãy nhập vào 1 số.Đếm xem có bao nhiêu chữ số bạn vừa nhập
    Gửi bởi namtuocdn trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 5
    Bài viết cuối: 16-10-2011, 10:39 AM
  5. Bài tập C++ Nhập mảng 1 chiều, nếu phần tử nhập trùng nhau thì bắt nhập lại
    Gửi bởi danielh trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 3
    Bài viết cuối: 09-07-2011, 03:35 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