Đăng Nhập

Vui lòng khai báo chính xác tên truy cập và mật khẩu!

Quên mật khẩu?

    HELP Mấy anh ơi có ai hiểu code này chỉ mình với

      Trung Binh
      nienluan1

      Giới tính : Nam

      Tuổi : 34

      Đến từ : can tho

      Ngày Tham gia : 22/08/2012

      Tổng số bài gửi : 12

      #1

       Tue Oct 23, 2012 7:40 pm

       Đoạn code giài hệ phương trình bằng hệ Cramer:
      using System;
      using System.Collections;
      using System.ComponentModel;
      using System.Data;
      using System.Drawing;
      using System.Text;
      using System.Windows.Forms;

      namespace hptCrammer
      {
      public partial class Form1 : Form
      {
      public Form1()
      {
      InitializeComponent();
      }

      private void button10_Click(object sender, EventArgs e)
      {
      Application.Exit();
      }

      private void button11_Click(object sender, EventArgs e)
      {
      Form3 f = new Form3();
      f.Show();
      }

      private void button1_Click(object sender, EventArgs e)
      {
      // Đoạn này em không hiểu chỉ em với
      double[,] a = new double[2, 2];
      a[0, 0] = double.Parse(a1.Text);
      a[0, 1] = double.Parse(a2.Text);
      a[1, 0] = double.Parse(a4.Text);
      a[1, 1] = double.Parse(a5.Text);
      double det10 = new double();
      det10 = a[0, 0] * a[1, 1] - a[1, 0] * a[0, 1];
      double[] b1 = new double[2];
      b1[0] = double.Parse(a3.Text);
      b1[1] = double.Parse(a6.Text);
      double det11 = b1[0] * a[1, 1] - b1[1] * a[0, 1];
      double det12 = a[0, 0] * b1[1] - a[1, 0] * b1[0];
      double x11 = det11 / det10;
      double x12 = det12 / det10;
      if (det10 == 0)
      {
      if (det11 != 0 || det12 != 0)
      MessageBox.Show("Hệ Phương trình vô nghiệm!");
      else
      MessageBox.Show("Hệ phương trình vô số nghiệm!");
      }
      else
      {
      MessageBox.Show(x11.ToString(), "Nghiệm X1");
      MessageBox.Show(x12.ToString(), "Nghiệm X2");
      }
      }

      private void button2_Click(object sender, EventArgs e)
      {
      a1.ResetText();
      a2.ResetText();
      a3.ResetText();
      a4.ResetText();
      a5.ResetText();
      a6.ResetText();
      }

      private void button5_Click(object sender, EventArgs e)
      {
      a7.ResetText();
      a8.ResetText();
      a9.ResetText();
      a10.ResetText();
      a11.ResetText();
      a12.ResetText();
      a13.ResetText();
      a14.ResetText();
      a15.ResetText();
      a16.ResetText();
      a17.ResetText();
      a18.ResetText();
      }

      private void button8_Click(object sender, EventArgs e)
      {
      a19.ResetText();
      a20.ResetText();
      a21.ResetText();
      a22.ResetText();
      a23.ResetText();
      a24.ResetText();
      a25.ResetText();
      a26.ResetText();
      a27.ResetText();
      a28.ResetText();
      a29.ResetText();
      a30.ResetText();
      a31.ResetText();
      a32.ResetText();
      a33.ResetText();
      a34.ResetText();
      a35.ResetText();
      a36.ResetText();
      a37.ResetText();
      a38.ResetText();
      }

      private void button3_Click(object sender, EventArgs e)
      {
      this.Refresh();
      }

      private void button7_Click(object sender, EventArgs e)
      {
      double[,] u = new double[5, 5];
      u[1, 1] = double.Parse(a19.Text);
      u[1, 2] = double.Parse(a20.Text);
      u[1, 3] = double.Parse(a21.Text);
      u[1, 4] = double.Parse(a22.Text);
      u[2, 1] = double.Parse(a24.Text);
      u[2, 2] = double.Parse(a25.Text);
      u[2, 3] = double.Parse(a26.Text);
      u[2, 4] = double.Parse(a27.Text);
      u[3, 1] = double.Parse(a29.Text);
      u[3, 2] = double.Parse(a30.Text);
      u[3, 3] = double.Parse(a31.Text);
      u[3, 4] = double.Parse(a32.Text);
      u[4, 1] = double.Parse(a34.Text);
      u[4, 2] = double.Parse(a35.Text);
      u[4, 3] = double.Parse(a36.Text);
      u[4, 4] = double.Parse(a37.Text);

      double[] b3 = new double[4];
      b3[0] = double.Parse(a23.Text);
      b3[1] = double.Parse(a28.Text);
      b3[2] = double.Parse(a33.Text);
      b3[3] = double.Parse(a38.Text);

      double[,] u1 = new double[5, 5];
      u1 = u;
      // Đoạn này hiểu sao vậy chỉ em với
      double d = u[1, 1] * u[2, 2] * u[3, 3] * u[4, 4] + u[1, 2] * u[2, 3] * u[3, 4] * u[4, 1] + u[1, 3] * u[2, 4] * u[3, 1] * u[4, 2] + u[1, 4] * u[2, 1] * u[3, 2] * u[4, 3] - u[1, 4] * u[3, 2] * u[2, 3] * u[4, 1] - u[4, 2] * u[3, 3] * u[2, 4] * u[1, 1] - u[4, 3] * u[3, 4] * u[2, 1] * u[1, 2] - u[4, 4] * u[3, 1] * u[2, 2] * u[1, 3];
      u[1, 1] = b3[0];
      u[1, 2] = b3[1];
      u[1, 3] = b3[2];
      u[1, 4] = b3[3];
      double d1 = u[1, 1] * u[2, 2] * u[3, 3] * u[4, 4] + u[1, 2] * u[2, 3] * u[3, 4] * u[4, 1] + u[1, 3] * u[2, 4] * u[3, 1] * u[4, 2] + u[1, 4] * u[2, 1] * u[3, 2] * u[4, 3] - u[1, 4] * u[3, 2] * u[2, 3] * u[4, 1] - u[4, 2] * u[3, 3] * u[2, 4] * u[1, 1] - u[4, 3] * u[3, 4] * u[2, 1] * u[1, 2] - u[4, 4] * u[3, 1] * u[2, 2] * u[1, 3];
      u = u1;
      u[2, 1] = b3[0];
      u[2, 2] = b3[1];
      u[2, 3] = b3[2];
      u[2, 4] = b3[3];
      double d2 = u[1, 1] * u[2, 2] * u[3, 3] * u[4, 4] + u[1, 2] * u[2, 3] * u[3, 4] * u[4, 1] + u[1, 3] * u[2, 4] * u[3, 1] * u[4, 2] + u[1, 4] * u[2, 1] * u[3, 2] * u[4, 3] - u[1, 4] * u[3, 2] * u[2, 3] * u[4, 1] - u[4, 2] * u[3, 3] * u[2, 4] * u[1, 1] - u[4, 3] * u[3, 4] * u[2, 1] * u[1, 2] - u[4, 4] * u[3, 1] * u[2, 2] * u[1, 3];

      u = u1;
      u[3, 1] = b3[0];
      u[3, 2] = b3[1];
      u[3, 3] = b3[2];
      u[3, 4] = b3[3];
      double d3 = u[1, 1] * u[2, 2] * u[3, 3] * u[4, 4] + u[1, 2] * u[2, 3] * u[3, 4] * u[4, 1] + u[1, 3] * u[2, 4] * u[3, 1] * u[4, 2] + u[1, 4] * u[2, 1] * u[3, 2] * u[4, 3] - u[1, 4] * u[3, 2] * u[2, 3] * u[4, 1] - u[4, 2] * u[3, 3] * u[2, 4] * u[1, 1] - u[4, 3] * u[3, 4] * u[2, 1] * u[1, 2] - u[4, 4] * u[3, 1] * u[2, 2] * u[1, 3];

      u = u1;
      u[4, 1] = b3[0];
      u[4, 2] = b3[1];
      u[4, 3] = b3[2];
      u[4, 4] = b3[3];
      double d4 = u[1, 1] * u[2, 2] * u[3, 3] * u[4, 4] + u[1, 2] * u[2, 3] * u[3, 4] * u[4, 1] + u[1, 3] * u[2, 4] * u[3, 1] * u[4, 2] + u[1, 4] * u[2, 1] * u[3, 2] * u[4, 3] - u[1, 4] * u[3, 2] * u[2, 3] * u[4, 1] - u[4, 2] * u[3, 3] * u[2, 4] * u[1, 1] - u[4, 3] * u[3, 4] * u[2, 1] * u[1, 2] - u[4, 4] * u[3, 1] * u[2, 2] * u[1, 3];

      [You must be registered and logged in to see this link.] + "\n" + d1.ToString()+ "\n" + d2.ToString()+ "\n" + d3.ToString()+ "\n" + d4.ToString());

      if (d == 0)
      {
      if ((d1 == 0) && (d2 == 0) && (d3 == 0) && (d4 == 0))
      MessageBox.Show("Hệ phương trình này có vô số nghiệm!");
      else
      MessageBox.Show("Hệ phương trình này vô nghiệm!");
      }
      else
      {
      MessageBox.Show((d1 / d).ToString(), "Nghiệm X1");
      MessageBox.Show((d2 / d).ToString(), "Nghiệm X2");
      MessageBox.Show((d3 / d).ToString(), "Nghiệm X3");
      MessageBox.Show((d4 / d).ToString(), "Nghiệm X4");
      }

      }

      private void button4_Click(object sender, EventArgs e)
      {
      double[,] a = new double[3, 3];
      a[0, 0] = double.Parse(a7.Text);
      a[0, 1] = double.Parse(a8.Text);
      a[0, 2] = double.Parse(a9.Text);
      a[1, 0] = double.Parse(a11.Text);
      a[1, 1] = double.Parse(a12.Text);
      a[1, 2] = double.Parse(a13.Text);
      a[2, 0] = double.Parse(a15.Text);
      a[2, 1] = double.Parse(a16.Text);
      a[2, 2] = double.Parse(a17.Text);
      double det20 = new double();
      det20 = a[0, 0] * a[1, 1] * a[2, 2] + a[0, 1] * a[1, 2] * a[2, 0] + a[1, 2] * a[1, 0] * a[2, 1] - (a[2, 0] * a[1, 1] * a[0, 2] + a[2, 1] * a[1, 2] * a[0, 0] + a[2, 2] * a[1, 0] * a[0, 1]);
      double[] b2 = new double[4];
      b2[0] = double.Parse(a10.Text);
      b2[1] = double.Parse(a14.Text);
      b2[2] = double.Parse(a18.Text);
      double det21 = b2[0] * a[1, 1] * a[2, 2] + b2[1] * a[2, 1] * a[0, 2] + b2[2] * a[0, 1] * a[1, 2] - (b2[0] * a[2, 1] * a[1, 2] + b2[1] * a[0, 1] * a[2, 2] + b2[2] * a[1, 1] * a[0, 2]);
      double det22 = a[0, 0] * b2[1] * a[2, 2] + b2[0] * a[1, 2] * a[2, 0] + a[0, 2] * a[1, 0] * b2[2] - (a[2, 0] * b2[1] * a[0, 2] + b2[2] * a[1, 2] * a[0, 0] + a[2, 2] * a[1, 0] * b2[0]);
      double det23 = a[0, 0] * a[1, 1] * b2[2] + a[0, 1] * b2[1] * a[0, 1] + b2[0] * a[1, 0] * a[2, 1] - (a[2, 0] * a[1, 1] * b2[0] + a[2, 1] * b2[1] * a[0, 0] + b2[2] * a[1, 0] * a[0, 1]);
      double x21 = det21 / det20;
      double x22 = det22 / det20;
      double x23 = det23 / det20;
      if (det20 == 0)
      {
      if (det21 != 0 || det22 != 0 || det23 != 0)
      MessageBox.Show("Hệ Phương trình vô nghiệm!");
      else
      MessageBox.Show("Hệ phương trình vô số nghiệm!");
      }
      else
      {
      MessageBox.Show(x21.ToString(), "Nghiệm X1");
      MessageBox.Show(x22.ToString(), "Nghiệm X2");
      MessageBox.Show(x23.ToString(), "Nghiệm X3");
      }
      }
      }}