static void Main(string[] args) { Console.WriteLine("Nhap 2 da thuc: "); Console.WriteLine("Da thuc 1: "); DaThuc daThuc1 = new DaThuc(3); daThuc1.Nhap(); daThuc1.Xuat(); Console.WriteLine("Da thuc 2: "); DaThuc daThuc2 = new DaThuc(3); daThuc2.Nhap(); daThuc2.Xuat(); string x; DaThuc daThuc3 = new DaThuc(); Console.WriteLine("Nhap 1 neu muon cong 2 da thuc: "); Console.WriteLine("Nhap 2 neu muon tru 2 da thuc: "); x = Console.ReadLine(); if (x == "1") { daThuc3 = daThuc1 + daThuc2; daThuc3.Xuat(); } else { daThuc3 = daThuc1 - daThuc2; daThuc3.Xuat(); } }
static void Main4() { DaThuc d1 = new DaThuc(); DaThuc d2 = new DaThuc(); Console.WriteLine("Da thuc thu nhat"); d1.Hien(); Console.WriteLine("Da thuc thu hai"); d2.Hien(); DaThuc d3 = d1.Tong(d2); DaThuc d4 = d1.Hieu(d2); Console.WriteLine("Da thuc tong"); d3.Hien(); Console.WriteLine("Da thuc hieu"); d4.Hien(); Console.ReadLine(); }
public DaThuc Hieu(DaThuc t2) { if (this.n == t2.n) { DaThuc d = new DaThuc(this.n); for (int i = 0; i < n; i++) { d.a[i] = this.a[i] - t2.a[i]; } return(d); } else { return(null); } }
public DaThuc Lagrange() { var length = bangSo.N; var D1y = new MaTran(1, length); for (int i = 0; i < length; i++) { D1y[0, i] = 1; } for (int i = 0; i < length; i++) { for (int j = 0; j < length; j++) { if (i == j) { continue; } D1y[0, i] *= bangSo[0, i] - bangSo[0, j]; } D1y[0, i] = bangSo[1, i] / D1y[0, i]; } var ketQua = new DaThuc(); for (int i = 0; i < length; i++) { var temp = new DaThuc(); temp[0] = 1; for (int j = 0; j < length; j++) { if (i == j) { continue; } var temp2 = new DaThuc(); temp2[1] = 1; temp2[0] = -bangSo[0, j]; temp = temp.NhanVoiDaThucBac1(temp2); } temp = temp * D1y[0, i]; ketQua = ketQua + temp; } return(ketQua); }
public DaThuc NewtonTongQuat() { var length = bangSo.N; var bangTiHieu = new MaTran(length, length); for (int i = 0; i < length; i++) { bangTiHieu[i, 0] = bangSo[1, i]; } for (int i = 1; i < length; i++) { for (int j = 0; j < length - i; j++) { var tuSo = bangTiHieu[j + 1, i - 1] - bangTiHieu[j, i - 1]; var mauSo = bangSo[0, j + i] - bangSo[0, j]; bangTiHieu[j, i] = tuSo / mauSo; } } var ketQua = new DaThuc(); ketQua[0] = bangTiHieu[0, 0]; for (int i = 0; i < length - 1; i++) { var temp = new DaThuc(); temp[0] = 1; for (int j = 0; j < i + 1; j++) { var temp2 = new DaThuc(); temp2[1] = 1; temp2[0] = -bangSo[0, j]; temp = temp.NhanVoiDaThucBac1(temp2); } temp = temp * bangTiHieu[0, i + 1]; ketQua = ketQua + temp; } return(ketQua); }