Лабораторный практикум по информатике


Пример написания программы



бет44/83
Дата06.01.2022
өлшемі1.1 Mb.
#15674
түріПрактикум
1   ...   40   41   42   43   44   45   46   47   ...   83

Пример написания программы


Задание : составить программу, отображающую графики функций sin(x) и cos(x) на интервале [Xmin, Xmax]. Предусмотреть возможность из- менения разметки координатных осей, а также шага построения таблицы.

Прежде всего, следует поместить на форму сам элемент управления

Chart. Он располагается в панели элементов в разделе Данные.

Список графиков хранится в свойстве Series, который можно изме- нить, выбрав соответствующий пункт в окне свойств. Поскольку на одном поле требуется вывести два отдельных графика функций, нужно добавить еще один элемент. Оба элемента, и существующий и добавленный, нужно соответствующим образом настроить: изменить тип диаграммы ChartType на Spline. Здесь же можно изменить подписи к графикам с абстрактных Series1 и Series2 на sin(x) и cos(x) – за это отвечает свойство Legend. Нако- нец, с помощью свойства BorderWidth можно сделать линию графика по- толще, а затем поменять цвет линии с помощью свойства Color.

Ниже приведен текст обработчика нажатия кнопки «Расчет!», ко- торый выполняет все требуемые настройки и расчеты и отображает графики функций:

private void buttonCalc_Click(object sender, EventArgs e)

{

// Считываем с формы требуемые значения double Xmin = double.Parse(textBoxXmin.Text); double Xmax = double.Parse(textBoxXmax.Text); double Step = double.Parse(textBoxStep.Text);



// Количество точек графика

int count = (int)Math.Ceiling((Xmax ‐ Xmin) / Step)

+ 1;

// Массив значений X – общий для обоих графиков



double[] x = new double[count];

// Два массива Y – по одному для каждого графика

double[] y1 = new double[count]; double[] y2 = new double[count];

// Расчитываем точки для графиков функции

for (int i = 0; i < count; i++)

{

// Вычисляем значение X x[i] = Xmin + Step * i;



// Вычисляем значение функций в точке X y1[i] = Math.Sin(x[i]);

y2[i] = Math.Cos(x[i]);

}
// Настраиваем оси графика chart1.ChartAreas[0].AxisX.Minimum = Xmin; chart1.ChartAreas[0].AxisX.Maximum = Xmax;
// Определяем шаг сетки

chart1.ChartAreas[0].AxisX.MajorGrid.Interval = Step;


// Добавляем вычисленные значения в графики chart1.Series[0].Points.DataBindXY(x, y1); chart1.Series[1].Points.DataBindXY(x, y2);

}



    1. Достарыңызбен бөлісу:
1   ...   40   41   42   43   44   45   46   47   ...   83




©emirsaba.org 2022
әкімшілігінің қараңыз

    Басты бет