static void Zm(string wyr, string x) { double w = 0; Console.WriteLine(); Console.WriteLine(); int ind = wyr.IndexOf('x'); wyr = wyr.Remove(ind, 1); wyr = wyr.Insert(ind, x); Mat.OdwrotnaNotacjaPolska rpn = new Mat.OdwrotnaNotacjaPolska(); Console.WriteLine(); rpn.Parse(wyr); w = rpn.Ocenianie(); Console.WriteLine("Wersja Poczatkowa: {0}", rpn.OrygnialneWyrazenie); Console.WriteLine(""); Console.WriteLine("Zamiana: {0}", rpn.ZamianaWyrazenia); Console.WriteLine(""); Console.WriteLine("Postfix: {0}", rpn.WyrazeniePostfixowe); Console.WriteLine(""); Console.WriteLine("Wynik: {0}", w); Console.WriteLine(""); }
static void Main(string[] args) { double wynik = 0.0; string rownanie; Mat.OdwrotnaNotacjaPolska onp = new Mat.OdwrotnaNotacjaPolska(); rownanie = args[0].Replace("x", args[1]); onp.Parse(rownanie); Console.WriteLine(onp.ZamianaWyrazenia); Console.WriteLine(onp.WyrazeniePostfixowe); wynik = onp.Ocenianie(); Console.WriteLine(wynik); int ilosc = int.Parse(args[4]); double[] liczby = new double[ilosc]; liczby[0] = double.Parse(args[2]); liczby[ilosc - 1] = double.Parse(args[3]); double krok = (liczby[ilosc - 1] - liczby[0]) / (ilosc - 1); for (int i = 1; i < ilosc - 1; i++) { liczby[i] = liczby[0] + krok * i; } string[] liczby2 = new string[ilosc]; for (int i = 0; i < ilosc; i++) { liczby2[i] = liczby[i].ToString(); liczby2[i] = liczby2[i].Replace(',', '.'); rownanie = args[0].Replace("x", liczby2[i]); onp.Parse(rownanie); wynik = onp.Ocenianie(); Console.WriteLine("{0} => {1}", liczby2[i], wynik); } Console.ReadLine(); }
static void Main(string[] args) { double wynik = 0.0; Mat.OdwrotnaNotacjaPolska onp = new Mat.OdwrotnaNotacjaPolska(); onp.Parse("3+4*2/(1-5)^2^3"); wynik = onp.Ocenianie(); Console.WriteLine("oryginał: {0}", onp.OrygnialneWyrazenie); Console.WriteLine("zamiana: {0}", onp.ZamianaWyrazenia); Console.WriteLine("postfix: {0}", onp.WyrazeniePostfixowe); Console.WriteLine("wynik: {0}", wynik); Console.WriteLine(); onp.Parse("exp(1)"); wynik = onp.Ocenianie(); Console.WriteLine("oryginał: {0}", onp.OrygnialneWyrazenie); Console.WriteLine("zamiana: {0}", onp.ZamianaWyrazenia); Console.WriteLine("postfix: {0}", onp.WyrazeniePostfixowe); Console.WriteLine("wynik: {0}", wynik); Console.WriteLine(); onp.Parse("abs(-10)"); wynik = onp.Ocenianie(); Console.WriteLine("oryginał: {0}", onp.OrygnialneWyrazenie); Console.WriteLine("zamiana: {0}", onp.ZamianaWyrazenia); Console.WriteLine("postfix: {0}", onp.WyrazeniePostfixowe); Console.WriteLine("wynik: {0}", wynik); Console.WriteLine(""); Console.WriteLine("Koniec programu"); Console.ReadLine(); }
static void Zmienna(string wyrazenie, string x) { Console.WriteLine("Wyrazenie dla podajego 'y'"); Console.WriteLine(); Console.WriteLine(); double wynik = 0; Console.WriteLine(); Console.WriteLine(); int index = wyrazenie.IndexOf('x'); wyrazenie = wyrazenie.Remove(index, 1); wyrazenie = wyrazenie.Insert(index, x); Mat.OdwrotnaNotacjaPolska ONP = new Mat.OdwrotnaNotacjaPolska(); Console.WriteLine(); ONP.Parse(wyrazenie); wynik = ONP.Ocenianie(); Console.WriteLine("Wersja poczatkowa: {0}", ONP.OrygnialneWyrazenie); Console.WriteLine("Wersja z zamiana: {0}", ONP.ZamianaWyrazenia); Console.WriteLine("Wersja z PostFix: {0}", ONP.WyrazeniePostfixowe); Console.WriteLine("Wynik: {0}", wynik); Console.WriteLine(""); }
static void Licz(string wyrazenie) { double wynik; Mat.OdwrotnaNotacjaPolska ONP = new Mat.OdwrotnaNotacjaPolska(); Console.WriteLine(); ONP.Parse(wyrazenie); wynik = ONP.Ocenianie(); Console.WriteLine("Wersja poczatkowa: {0}", ONP.OrygnialneWyrazenie); Console.WriteLine("Wersja z zamiana: {0}", ONP.ZamianaWyrazenia); Console.WriteLine("Wersja z PostFix: {0}", ONP.WyrazeniePostfixowe); Console.WriteLine("Wynik: {0}", wynik); Console.WriteLine(""); }
static void Przedzial(string wyrazenie, string x, double p, double k, double n) { double wynik = 0.0; Mat.OdwrotnaNotacjaPolska onp = new Mat.OdwrotnaNotacjaPolska(); double odj, dziel, odej1; odj = k - p; odej1 = Math.Abs(odj); Console.WriteLine(); dziel = odej1 / (n - 1); wynik = 0; //wyrazenie = "sinx"; int index1 = wyrazenie.IndexOf('x'); wyrazenie = wyrazenie.Remove(index1, Convert.ToInt32(x)); string liczba; for (double i = p; i <= k; i += dziel) { liczba = i.ToString(); liczba = liczba.Replace(',', '.'); wyrazenie = wyrazenie.Insert(index1, liczba); //Console.WriteLine(wyrazenie); onp.Parse(wyrazenie); wynik = onp.Ocenianie(); Console.WriteLine("oryginał: {0}", onp.OrygnialneWyrazenie); Console.WriteLine(); Console.WriteLine("zamiana: {0}", onp.ZamianaWyrazenia); Console.WriteLine(); Console.WriteLine("postfix: {0}", onp.WyrazeniePostfixowe); Console.WriteLine(); Console.WriteLine("wynik: {0}", wynik); Console.WriteLine(); wyrazenie = wyrazenie.Remove(index1, liczba.Length); } }
static void Prz(string wyr, string x, double pp, double kp, double n) { double w = 0.0; Mat.OdwrotnaNotacjaPolska rpn = new Mat.OdwrotnaNotacjaPolska(); double o, d, o1; o = kp - pp; o1 = Math.Abs(o); Console.WriteLine(); d = o1 / (n - 1); w = 0; int ind = wyr.IndexOf('x'); wyr = wyr.Remove(ind, Convert.ToInt32(x)); string l; for (double i = pp; i <= kp; i += d) { l = i.ToString(); l = l.Replace(',', '.'); wyr = wyr.Insert(ind, l); rpn.Parse(wyr); w = rpn.Ocenianie(); Console.WriteLine("Wersja Poczatkowa: {0}", rpn.OrygnialneWyrazenie); Console.WriteLine(); Console.WriteLine("zamiana: {0}", rpn.ZamianaWyrazenia); Console.WriteLine(); Console.WriteLine("postfix: {0}", rpn.WyrazeniePostfixowe); Console.WriteLine(); Console.WriteLine("Wynik: {0}", w); Console.WriteLine(); wyr = wyr.Remove(ind, l.Length); } }