Конструкция try / catch - в чем ее суть? - C#
Формулировка задачи:
Расскажите пожалуйста о методе try...catch своими словами! что за исключения он обрабатывает??? например, в моем коде, он вообще нужен???
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}
public double a, b, k, p, q, r, s, t;
public int n;
public double f1(double x)
{
return k / x;
}
public double df1(double x)
{
return k * Math.Log(Math.Abs(x));
}
public double f2(double x)
{
return p * x * x + q * x + r;
}
public double df2(double x)
{
return p * x * x * x / 3 + q * x * x / 2 + r * x;
}
public double f3(double x)
{
return s * Math.Cos(t * x);
}
public double df3(double x)
{
return s / t * Math.Sin(t * x);
}
public delegate double Func(double x);
public double sqr(Func f)
{
double h = (b - a) / n;
double res = 0;
for (int i = 0; i < n; i++)
{
res += f(a + i * h + h / 2);
}
return h * res;
}
private void button1_Click(object sender, EventArgs e)
{
try
{
a = Double.Parse(textBox1.Text);
b = Double.Parse(textBox2.Text);
n = Int32.Parse(textBox3.Text);
if ((a < b) & (n > 0))
{
if (radioButton1.Checked)
{
k = Double.Parse(textBox4.Text);
textBox10.Text = sqr(f1).ToString();
textBox11.Text = (df1(b) - df1(a)).ToString();
}
if (radioButton2.Checked)
{
p = Double.Parse(textBox5.Text);
q = Double.Parse(textBox6.Text);
r = Double.Parse(textBox7.Text);
textBox10.Text = sqr(f2).ToString();
textBox11.Text = (df2(b) - df2(a)).ToString();
}
if (radioButton3.Checked)
{
s = Double.Parse(textBox8.Text);
t = Double.Parse(textBox9.Text);
if (t != 0)
{
textBox10.Text = sqr(f3).ToString();
textBox11.Text = (df3(b) - df3(a)).ToString();
}
}
}
else MessageBox.Show("Введены некорректные данные.");
}
catch
{
MessageBox.Show("Введены некорректные данные.");
}
}
private void button2_Click(object sender, EventArgs e)
{
Application.Exit();
}
}Решение задачи: «Конструкция try / catch - в чем ее суть?»
textual
Листинг программы
public delegate double Func(double x); public double sqr(Func f)