Example #1
0
        public static void Run(string nazwaAlgorytmu, string argument1, string argument2)
        {
            string wynik1 = "", wynik2 = "";
            bool   result1, result2;
            int    pom1, pom2;
            double arg1, arg2;

            if (argument1 != "")
            {
                if (nazwaAlgorytmu == Nazwy.strEuklides)
                {
                    result1 = int.TryParse(argument1, out pom1);
                    result2 = int.TryParse(argument2, out pom2);
                    if (result1 && result2)
                    {
                        wynik1 = AlgorytmyKlasyczne.NWD(pom1, pom2).ToString();
                        wynik2 = ((pom1 * pom2) / int.Parse(wynik1)).ToString();
                    }
                    else
                    {
                        throw new ArgumentException();
                    }
                }
                else if (nazwaAlgorytmu == Nazwy.strSilnia)
                {
                    result1 = int.TryParse(argument1, out pom1);
                    if (result1)
                    {
                        wynik1 = AlgorytmyKlasyczne.Silnia(pom1).ToString();
                    }
                    else
                    {
                        throw new ArgumentException();
                    }
                }
                else if (nazwaAlgorytmu == Nazwy.strPierwsza)
                {
                    result1 = int.TryParse(argument1, out pom1);
                    if (result1)
                    {
                        result2 = AlgorytmyKlasyczne.Pierwsza(pom1);
                        wynik1  = result2 ? "Tak" : "Nie";
                    }
                    else
                    {
                        throw new ArgumentException();
                    }
                }
                else if (nazwaAlgorytmu == Nazwy.strSumaDzielnikow)
                {
                    result1 = int.TryParse(argument1, out pom1);
                    if (result1)
                    {
                        wynik1 = AlgorytmyKlasyczne.SumaDzielnikow(pom1).ToString();
                    }
                    else
                    {
                        throw new ArgumentException();
                    }
                }
                else if (nazwaAlgorytmu == Nazwy.strCzynnikiPierwsze)
                {
                    result1 = int.TryParse(argument1, out pom1);
                    if (result1)
                    {
                        wynik1 = AlgorytmyKlasyczne.CzynnikiPierwsze(pom1);
                    }
                    else
                    {
                        throw new ArgumentException();
                    }
                }
                else if (nazwaAlgorytmu == Nazwy.strSumaPrzedzialu)
                {
                    result1 = int.TryParse(argument1, out pom1);
                    result2 = int.TryParse(argument2, out pom2);
                    if (result1 && result2)
                    {
                        if (pom1 > pom2)
                        {
                            int x = pom1;
                            pom1 = pom2;
                            pom2 = x;
                        }
                        wynik1 = AlgorytmyKlasyczne.SumaZPrzedzialu(pom1, pom2).ToString();
                    }
                    else
                    {
                        throw new ArgumentException();
                    }
                }
                else if (nazwaAlgorytmu == Nazwy.strSumaCyfr)
                {
                    result1 = int.TryParse(argument1, out pom1);
                    if (result1)
                    {
                        wynik1 = AlgorytmyKlasyczne.SumaCyfr(pom1).ToString();
                    }
                }
                else if (nazwaAlgorytmu == Nazwy.strRNG)
                {
                    result1 = int.TryParse(argument1, out pom1);
                    result2 = int.TryParse(argument2, out pom2);
                    if (result1 && result2)
                    {
                        if (pom1 > pom2)
                        {
                            int x = pom1;
                            pom1 = pom2;
                            pom2 = x;
                        }
                        wynik1 = AlgorytmyKlasyczne.RNG(pom1, pom2).ToString();
                    }
                    else
                    {
                        throw new ArgumentException();
                    }
                }
                else if (nazwaAlgorytmu == Nazwy.strZerowe)
                {
                    result1 = double.TryParse(argument1, out arg1);
                    result2 = double.TryParse(argument2, out arg2);
                    if (result1 && result2)
                    {
                        wynik1 = AlgorytmyZachlanne.MiejsceZerowe(arg1, arg2).ToString();
                        if (!AlgorytmyZachlanne.Znaleziono)
                        {
                            wynik1 = Nazwy.eNieZnaleziono;
                        }
                    }
                    else
                    {
                        throw new ArgumentException();
                    }
                }
                else if (nazwaAlgorytmu == Nazwy.strCalka)
                {
                    result1 = double.TryParse(argument1, out arg1);
                    result2 = double.TryParse(argument2, out arg2);
                    if (result1 && result2)
                    {
                        wynik1 = AlgorytmyZachlanne.Całka(arg1, arg2).ToString();
                    }
                    else
                    {
                        throw new ArgumentException();
                    }
                }
                else if (nazwaAlgorytmu == Nazwy.strPierwiastek)
                {
                    result1 = double.TryParse(argument1, out arg1);
                    if (result1)
                    {
                        wynik1 = AlgorytmyZachlanne.Pierwiastek(arg1).ToString();
                    }
                    else
                    {
                        throw new ArgumentException();
                    }
                }
                else
                {
                }
            }
            if (wynik2 != "")
            {
                universal.SetResult(wynik1, wynik2);
            }
            else
            {
                universal.SetResult(wynik1);
            }
        }