コード例 #1
0
        private void BadajSystemProc(object parametrySystemu)
        {
            parametry par = parametrySystemu as parametry;


            foreach (Algorytm inicjowany in par.listaAlgorytmow)
            {
                if ((inicjowany.Wybrany) && ((inicjowany.mozliwy) || ((inicjowany.wymuszalny) && (par.wymuszanie))) && (inicjowany.Obliczony == false))
                {
                    inicjowany.Inicjacja(par.lBadan, par.lSerii);

                    if (inicjowany.symulacja)
                    {
                        inicjowany.prezentacjaWyn = new Algorytm.pokWynikObl(PokazWyniki);
                    }

                    inicjowany.WymiarujSystem();
                }
            }
            PokazWyniki();
        }
コード例 #2
0
        public void BadajSystem(double Start, double Koniec, double Delta, bool wymuszenie)
        {
            aStart = Start;
            aKonc  = Koniec;
            aDelta = Delta;
            lBadan = (int)((aKonc - aStart + 0.01) / aDelta + 1);

            int lAlg = 0;

            foreach (Algorytm inicjowany in _ListaAlgorytmow)
            {
                if ((inicjowany.Wybrany) && ((inicjowany.mozliwy) || ((inicjowany.wymuszalny) && (wymuszenie))) && (inicjowany.Obliczony == false))
                {
                    lAlg++;
                    if (inicjowany.symulacja)
                    {
                        lAlg += (lSerii - 1);
                    }
                }
            }

            PostCalk    = 0;
            PostJedBad  = (double)100 / (double)lBadan;
            PostJedBad /= (double)lAlg;

            parametry parametrySystemu = new parametry();

            parametrySystemu.listaAlgorytmow = _ListaAlgorytmow;
            parametrySystemu.lBadan          = lBadan;
            parametrySystemu.lSerii          = lSerii;
            parametrySystemu.wymuszanie      = wymuszenie;

            watekBadanieSystemu = new Thread(BadajSystemProc);
            watekBadanieSystemu.IsBackground = true;
            watekBadanieSystemu.Start(parametrySystemu);
        }