Example #1
0
        /// <summary>
        /// Вставляет элемент в коллекцию по указанному индексу.
        /// </summary>
        void Insert(ExperimentData EData, int Index)
        {
            listInputData.Items.Insert(Index, strInData(EData));

            EData.OutDataCalc();

            listOutputData.Items.Insert(Index, strOutData(EData));

            EDatas.Insert(Index, EData);

            FileSave(pathInSave, pathOutSave);
        }
Example #2
0
        /// <summary>
        /// Добавляет элемент в список EDatas.
        /// </summary>
        void Add(ExperimentData EData)
        {
            listInputData.Items.Add(strInData(EData));

            EData.OutDataCalc();

            listOutputData.Items.Add(strOutData(EData));

            EDatas.Add(EData);

            listDataSelectedIndex(listInputData, EDatas.Count - 1);

            FileSave(pathInSave, pathOutSave);
        }
Example #3
0
        /// <summary>
        /// Открывает входной файл и считывает эксперименты.
        /// </summary>
        void FileOpen(string path)
        {
            fileOpen = true;

            try
            {
                FileStream FS = new FileStream(path, FileMode.Open);

                StreamReader streamReader = new StreamReader(FS);
                string       str;

                for (int i = 0; (str = streamReader.ReadLine()) != null; i++)
                {
                    if ((str.IndexOf('*') == 0) & !inputFileError)
                    {
                        try
                        {
                            str = str.Substring(2);

                            ExperimentData EData = new ExperimentData();

                            EData.Name = str;
                            EData.Name = EData.Name.Substring(0, 15);

                            str = str.Substring(15);
                            var Str = str.Split(new[] { " " }, StringSplitOptions.RemoveEmptyEntries);

                            for (int j = 0; j < Str.Length; j++)
                            {
                                EData.InData.Add(Convert.ToDouble(Str[j]));
                            }

                            listInputData.Items.Add(strInData(EData));

                            EDatas.Add(EData);
                        }
                        catch { InputFileError(); }
                    }
                    else
                    {
                        InputFileError();
                    }
                }

                streamReader.Close();
            }
            catch { fileOpen = false; }

            listDataSelectedIndex(listInputData, 0);
        }
Example #4
0
        /// <summary>
        /// Ищет максимальный элемент.
        /// </summary>
        double MaxElement(List <double> InData, out int Index)
        {
            ExperimentData eData = new ExperimentData();

            Index = 0;
            double max = eData.GetData(InData, 0);

            for (int i = 1; i < InData.Count; i++)
            {
                if (max < eData.GetData(InData, i))
                {
                    max   = eData.GetData(InData, i);
                    Index = i;
                }
            }

            return(max);
        }
Example #5
0
        void EDataInitialize()
        {
            var text = textBoxName.Text;

            while (text.Length < 15)
            {
                text += ' ';
            }

            EData = new ExperimentData();

            EData.Name = text;

            var Str = textBoxData.Text.Split(new[] { " " }, StringSplitOptions.RemoveEmptyEntries);

            for (int j = 0; j < Str.Length; j++)
            {
                EData.SetData(EData.InData, Convert.ToDouble(Str[j]), j);
            }
        }
Example #6
0
        /// <summary>
        /// Ищет Max и Мин значения.
        /// </summary>
        void MaxAndMinOutCalc(ExperimentData EData, out double Max, out double Min)
        {
            Max = EData.Max;
            Min = EData.Min;

            if (EData.MaxAbs > Max)
            {
                Max = EData.MaxAbs;
            }
            else if (EData.MaxAbs < Min)
            {
                Min = EData.MaxAbs;
            }

            if (EData.Sum > Max)
            {
                Max = EData.Sum;
            }
            else if (EData.Sum < Min)
            {
                Min = EData.Sum;
            }
        }
Example #7
0
 string strOutData(ExperimentData EData)
 {
     return(StrData(EData.Name, GetDataStr(EData.OutData)));
 }