đa thức
class DaThuc
{
private int _BacDaThuc;
private double[] _HeSo=new double[1000];
public int BacDaThuc
{
get { return _BacDaThuc;}
set { _BacDaThuc = value;}
}
public double[] HeSo
{
get { return _HeSo; }
set { _HeSo = value; }
}
public DaThuc(int N)
{
N = _BacDaThuc+1;
}
public DaThuc(params double [] arr)
{
_BacDaThuc=arr.Length-1;
arr = new double[_BacDaThuc + 1];
for(int i=0;i<=_BacDaThuc;i++)
{
_HeSo[i] = arr[i];
}
}
public double this[int index]
{
get
{
return _HeSo[index];
}
set
{
_HeSo[index] = value;
}
}
public static DaThuc operator+(DaThuc f,DaThuc g)
{
DaThuc h = new DaThuc();
int BacCaoNhat = Math.Max(f._BacDaThuc, g._BacDaThuc);
h._BacDaThuc = BacCaoNhat;
for (int i = 0; i <= h._BacDaThuc; i++)
{
h._HeSo[i] = f._HeSo[i] + g._HeSo[i];
}
return h;
}
public static DaThuc operator-(DaThuc f,DaThuc g)
{
DaThuc h = new DaThuc();
int BacCaoNhat = Math.Max(f._BacDaThuc, g._BacDaThuc);
h._BacDaThuc = BacCaoNhat;
for (int i = 0; i <= h._BacDaThuc; i++)
{
h._HeSo[i] = f._HeSo[i] - g._HeSo[i];
}
return h;
}
public override string ToString()
{
if (this[0] != 0)
{
Console.Write("{0}+ ", this[0]);
}
for (int i =this._BacDaThuc; i >0; i--)
{
if (this[i] == 0) continue;
if (i > 1)
Console.Write(" {0}*x^{1} +", i,this[i]);
else
Console.Write(" {0}*x +", this[i]);
}
if (this[_BacDaThuc] != 0)
{
Console.WriteLine(" {0}*x^{1}", this[_BacDaThuc], _BacDaThuc);
}
return "";
}
}
class Program
{
public static void NhapDaThuc(DaThuc f, int n)
{
f.BacDaThuc = n;
Console.WriteLine("Nhap he so:");
for (int i = 0; i <= f.BacDaThuc; i++)
{
f[i] = double.Parse(Console.ReadLine());
}
}
static void Main(string[] args)
{
Console.Write("Nhap Bac DT1:");
int n = int.Parse(Console.ReadLine());
DaThuc f = new DaThuc(n);
NhapDaThuc(f, n);
Console.Write("Da thuc vua nhap f(x)=");
f.ToString();
Console.Write("Nhap Bac DT2:");
int m = int.Parse(Console.ReadLine());
DaThuc g = new DaThuc(m);
NhapDaThuc(g, m);
Console.Write("Da thuc vua nhap g(x)=");
g.ToString();
int max1 = Math.Max(n,m);
DaThuc h = new DaThuc(max1);
h = f + g;
Console.Write("f(x)+g(x)=");
h.ToString();
h = f - g;
Console.Write("f(x)-g(x)=");
h.ToString();
Console.ReadLine();
}
}
Bạn đang đọc truyện trên: Truyen2U.Com