Построить график функции - C# (210869)
Формулировка задачи:
помогите пожалуйста! нужно построить график функции y=a*sin(b*x+c) в C# (a,b,c- вводятся с клавиатуры). Заранее спасибо.
Решение задачи: «Построить график функции»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication5
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click( object sender, EventArgs e )
{
double a = 0, b = 0, c = 0;
try
{
a = double.Parse( textBox1.Text );
b = double.Parse( textBox2.Text );
c = double.Parse( textBox3.Text );
}
catch
{
MessageBox.Show( "Ошибка ввода, повторите заного.", "Ошибка", MessageBoxButtons.OK );
textBox1.Clear();
textBox2.Clear();
textBox3.Clear();
}
Point[] point_mas = new Point[200];
Pen pen = new Pen( Color.Lime );
Graphics graph = Graphics.FromImage( pictureBox1.Image );
for ( int i = 0; i < 100; i++ )
{
point_mas[i] = new Point( i, Convert.ToInt32(Math.Round( function(a,b,c,i) * 100)) );
graph.DrawLine( pen, point_mas[i], new Point( point_mas[i].X + 1, point_mas[i].Y + 1 ) );
}
//graph.DrawClosedCurve( pen, point_mas );
graph.Dispose();
pen.Dispose();
pictureBox1.Invalidate();
}
double function( double a, double b, double c, double x )
{
return a * Math.Sin( b * x + c );
}
}
}