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.InnerInterval = Step;
// Добавляем вычисленные значения в график
chart1.Series[0].Points.DataBindX(y1);
chart1.Series[0].Points.DataBindX(y2);
}
}