namespace YL4_3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent()
}
private void Form1_Load(object sender, EventArgs e)
{
this.Text = "三角函数计算器"
RadioSin.Checked = true
LabelResult.Text = ""
}
private void ButtonOK_Click(object sender, EventArgs e)
{
if (RadioSin.Checked)
{
SinFunc SinVal = new SinFunc()
SinVal.Angle = double.Parse(TextAngle.Text.Trim())
LabelResult.Text = "Sin " + TextAngle.Text + "º = " + SinVal.GetResult().ToString("f4")
}
if (RadioCos.Checked)
{
CosFunc CosVal = new CosFunc()
CosVal.Angle = double.Parse(TextAngle.Text.Trim())
LabelResult.Text = "Cos " + TextAngle.Text + "º = " + CosVal.GetResult().ToString("f4")
}
if (RadioTan.Checked)
{
TanFunc TanVal = new TanFunc()
TanVal.Angle = double.Parse(TextAngle.Text.Trim())
LabelResult.Text = "tg " + TextAngle.Text + "º = " + TanVal.GetResult().ToString("f4")
}
if (RadioCtg.Checked)
{
TanFunc TanVal = new TanFunc()
TanVal.Angle = double.Parse(TextAngle.Text.Trim())
LabelResult.Text = "tg " + TextAngle.Text + "º = " + (1 / TanVal.GetResult()).ToString("f4")
}
}
}
}
namespace Function
{
public class TriFunc //声明一个三角函数类
{
private double angle;
public double Angle
{
get { return angle; }
set { angle = value; }
}
public double TransAngle(double a)
{
a = a * Math.PI / 180;
return a;
}
}
public class SinFunc : TriFunc//继承于TriFunc(三角函数)类的SinFunc(正弦函数)类
{
public double GetResult()
{
Angle = TransAngle(Angle);
return Math.Sin(Angle);
}
}
public class CosFunc : TriFunc//继承于TriFunc(三角函数)类的CosFunc(余弦函数)类
{
public double GetResult()
{
Angle = TransAngle(Angle);
return Math.Cos(Angle);
}
}
public class TanFunc : TriFunc//继承于TriFunc(三角函数)类的TanFunc(正切函数)类
{
public double GetResult()
{
Angle = TransAngle(Angle);
return Math.Tan(Angle);
}
}
public class CtgFunc : TriFunc//继承于TriFunc(三角函数)类的CtgFunc(余切函数)类
{
public double GetResult()
{
Angle = TransAngle(Angle);
return 1 / Math.Tan(Angle);
}
}
}