public static polinom operator +(polinom p1, polinom p2) { double[][] z = new double[0][]; int n = 0; bool f1 = false; bool[] f2 = new bool[p2.x.Length]; for (int i = 0; i < f2.Length; i++) { f2[i] = false; } for (int i = 0; i < p1.x.Length; i++) { for (int j = 0; j < p2.x.Length; j++) { if (p1.x[i][1] == p2.x[j][1]) { Array.Resize(ref z, z.Length + 1); z[n] = new double[2]; z[n][0] = p1.x[i][0] + p2.x[j][0]; z[n][1] = p1.x[i][1]; n++; f1 = true; f2[j] = true; break; } } if (!f1) { Array.Resize(ref z, z.Length + 1); z[n] = new double[2]; z[n][0] = p1.x[i][0]; z[n][1] = p1.x[i][1]; n++; } else { f1 = false; } } for (int i = 0; i < f2.Length; i++) { if (f2[i] == false) { Array.Resize(ref z, z.Length + 1); z[n] = new double[2]; z[n][0] = p2.x[i][0]; z[n][1] = p2.x[i][1]; n++; } } polinom p = new polinom(z); return(p); }
static void Main(string[] args) { /*Console.WriteLine("Enter coordinates of 1st point:"); * string[] s = Console.ReadLine().Trim().Split(); * double[] v = new double[s.Length]; * for (int i = 0; i < s.Length; i++) v[i] = Convert.ToDouble(s[i]); * vector v1 = new vector(v[0], v[1], v[2]); * Console.WriteLine($"\tFirst vector's equation = {v1}"); * * Console.WriteLine("Enter coordinates of 2nd point:"); * s = Console.ReadLine().Trim().Split(); * for (int i = 0; i < s.Length; i++) v[i] = Convert.ToDouble(s[i]); * vector v2 = new vector(v[0], v[1], v[2]); * Console.WriteLine($"\tSecond vector's equation = {v2}"); * * Console.WriteLine($"\tv1 + v2 = {v1 + v2}"); * Console.WriteLine($"\tv1 v2 = {v1 - v2}"); * Console.WriteLine($"\tv1 * v2 = {v1 * v2} (scalar)\nEnter any number:"); * double n = Convert.ToDouble(Console.ReadLine()); * Console.WriteLine($"\tv1 * {n} = {v1 * n}"); * Console.WriteLine($"\tv1 / {n} = {v1 / n}"); * Console.WriteLine($"\tMagnitude of v1 = {v1.magnitude()}"); * Console.WriteLine($"\tUnit vector in the direction of v1 = {v1.unit()}");*/ Console.WriteLine("Enter first polinomial:\t\t(Ex. -4x^2 + 12)"); polinom p1 = new polinom(Console.ReadLine()); Console.WriteLine("Enter second polinomial:"); polinom p2 = new polinom(Console.ReadLine()); Console.WriteLine($"p1 + p2 = {p1 + p2}"); Console.WriteLine($"p1 * p2 = {p1 * p2}"); }
public static polinom operator *(polinom p1, polinom p2) { double[][] z = new double[0][]; int n = 0; for (int i = 0; i < p1.x.Length; i++) { for (int j = 0; j < p2.x.Length; j++) { Array.Resize(ref z, z.Length + 1); z[n] = new double[2]; z[n][0] = p1.x[i][0] * p2.x[j][0]; z[n][1] = p1.x[i][1] + p2.x[j][1]; n++; } } polinom p = new polinom(z); return(p); }