public static Polinom operator*(Polinom a, Polinom b) { Polinom res = new Polinom(); foreach (Monom i in a) { foreach (Monom j in b) { res.monoms.Add(i * j); Console.WriteLine(res); } } return(res.ReducedPolinom()); }
public static Polinom operator+(Polinom a, Polinom b) { Polinom res = new Polinom(); foreach (Monom i in a) { res.monoms.Add(i); } foreach (Monom j in b) { res.monoms.Add(j); } return(res.ReducedPolinom()); }
public static Polinom Compose(Polinom a, Polinom b) { Polinom result = new Polinom(); foreach (Monom monA in a.monoms) { Polinom pol = Polinom.Pow(b, monA.degree); foreach (Monom monB in pol) { result.monoms.Add(new Monom(monA.coeff * monB.coeff, monA.symbol, monB.degree)); } } return(result.ReducedPolinom()); }