Írjunk programot, amely függvénnyel kétféle módon számítja ki a hatvány értékét: matematikai függvénnyel, valamint ciklus utasítással.
A feladat megoldása:
// Matematikai függvénnyel
static double hatvFg(double x, int n)
{
if (n == 0) return 1;
if (n < 0)
return 1.0 / Math.Pow(x, -n);
else
return Math.Pow(x, n);
}
// Ciklus utasítással
static double hatvCiklussal(double x, int n)
{
int i;
double ered;
if (n == 0) return 1;
ered = 1;
for (i = 1; i <= Math.Abs(n); i++)
ered *= x;
if (n < 0)
ered = 1.0 / ered;
return ered;
}
private void button1_Click(object sender, EventArgs e)
{
double alap, hatvány;
int kitevő;
if (textBox1.Text != "" && textBox2.Text != "")
{
alap = Double.Parse(textBox1.Text);
kitevő = Int32.Parse(textBox2.Text);
hatvány = hatvFg(alap, kitevő);
textBox3.Text = hatvány.ToString();
hatvány = hatvCiklussal(alap, kitevő);
textBox4.Text = hatvány.ToString();
}
}
private void textBox1_TextChanged(object sender, EventArgs e)
{
textBox3.Text = ""; textBox4.Text = "";
}
private void textBox2_TextChanged(object sender, EventArgs e)
{
textBox3.Text = ""; textBox4.Text = "";
}
A program futási eredményei: