private void button_make_Click(object sender, EventArgs e)
        {
            int      n;
            double   V;
            Category type;
            bool     success;

            // проверяем категорию
            type    = ServiceFunctions.TransformCategory(comboBox_type.SelectedIndex);
            success = type != Category.none;
            if (!success)
            {
                MessageBox.Show("Ошибка!\nНе выбран тип матрицы!");
                comboBox_type.Focus();
                return;
            }
            // проверяем введенную размерность
            success = Int32.TryParse(textBox_n.Text, out n);
            if (!success)
            {
                MessageBox.Show("Ошибка!\nНе верно введена размерность!");
                textBox_n.Text = "";
                textBox_n.Focus();
                return;
            }
            if (n <= 1)
            {
                MessageBox.Show("Ошибка!\nРазмерность должна быть больше 1!");
                textBox_n.Text = "";
                textBox_n.Focus();
                return;
            }
            // проверяем введенное значение V
            success = Double.TryParse(textBox_V.Text, out V);
            if (!success)
            {
                success = Double.TryParse(textBox_V.Text.Replace('.', ','), out V);
                if (!success)
                {
                    MessageBox.Show("Ошибка!\nНе верно введено значение V!");
                    textBox_V.Text = "";
                    textBox_V.Focus();
                    return;
                }
            }

            // Отправляем данные
            DataTransfer.data[0] = n;
            DataTransfer.data[1] = V;
            DataTransfer.data[2] = type;

            // уничтожаем текущую форму
            this.Dispose();
        }
示例#2
0
        // Обработка нажатия клавиши Готово
        private void button_ready_Click(object sender, EventArgs e)
        {
            int      n;
            double   V;
            Category type;

            double[] packed_form;
            double   Diapazon_ot, Diapazon_do;
            bool     success;

            // проверяем категорию
            type    = ServiceFunctions.TransformCategory(comboBox_type.SelectedIndex);
            success = type != Category.none;
            if (!success)
            {
                MessageBox.Show("Ошибка!\nНе выбран тип матрицы!");
                comboBox_type.Focus();
                return;
            }
            // проверяем введенную размерность
            success = Int32.TryParse(textBox_n.Text, out n);
            if (!success)
            {
                MessageBox.Show("Ошибка!\nНе верно введена размерность!");
                textBox_n.Text = "";
                textBox_n.Focus();
                return;
            }
            if (n <= 1)
            {
                MessageBox.Show("Ошибка!\nРазмерность должна быть больше 1!");
                textBox_n.Text = "";
                textBox_n.Focus();
                return;
            }
            // проверяем введенное значение V
            success = Double.TryParse(textBox_V.Text, out V);
            if (!success)
            {
                success = Double.TryParse(textBox_V.Text.Replace('.', ','), out V);
                if (!success)
                {
                    MessageBox.Show("Ошибка!\nНе верно введено значение V!");
                    textBox_V.Text = "";
                    textBox_V.Focus();
                    return;
                }
            }
            // проверяем диапазоны
            success = Double.TryParse(textBox_ot.Text, out Diapazon_ot);
            if (!success)
            {
                success = Double.TryParse(textBox_ot.Text.Replace('.', ','), out Diapazon_ot);
                if (!success)
                {
                    MessageBox.Show("Ошибка!\nНе верно введено значение диапазона!");
                    textBox_ot.Text = "";
                    textBox_ot.Focus();
                    return;
                }
            }
            success = Double.TryParse(textBox_do.Text, out Diapazon_do);
            if (!success)
            {
                success = Double.TryParse(textBox_do.Text.Replace('.', ','), out Diapazon_do);
                if (!success)
                {
                    MessageBox.Show("Ошибка!\nНе верно введено значение диапазона!");
                    textBox_do.Text = "";
                    textBox_do.Focus();
                    return;
                }
            }
            if (Diapazon_ot > Diapazon_do)
            {
                MessageBox.Show("Ошибка!\nЗначение нижней границы диапазона больше значения верхней границы!");
                textBox_ot.Text = "";
                textBox_do.Text = "";
                textBox_ot.Focus();
                return;
            }

            // заполнение случайными значениями
            packed_form = ServiceFunctions.rand_array(n * (n + 1) / 2, Diapazon_ot, Diapazon_do);

            // Отправка данных
            DataTransfer.data[0] = n;
            DataTransfer.data[1] = V;
            DataTransfer.data[2] = type;
            DataTransfer.data[3] = packed_form;

            // Возвращение на старую форму
            this.Dispose();
        }