I'm building a calculator in C # and I'm having a little problem building the button that calculates the factorial.
private void btnfact_Click(object sender, RoutedEventArgs e)
{
primeiro += double.Parse(janela.Text);
//int i = 0;
primeiro = Convert.ToSingle(primeiro);
for (int i = primeiro - 1; i > 1; i--)
{
resutado *= i;
}
janela.Text = resutado.ToString();
}
I'm having an error in FOR "first - 1"
Semi-complete calculator:
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
double primeiro;
double segundo;
double resutado;
string operacao;
public MainWindow()
{
InitializeComponent();
}
private void btn1_Click(object sender, RoutedEventArgs e)
{
janela.Text = janela.Text + "1";
}
private void btn2_Click(object sender, RoutedEventArgs e)
{
janela.Text = janela.Text + "2";
}
private void btn3_Click(object sender, RoutedEventArgs e)
{
janela.Text = janela.Text + "3";
}
private void btn4_Click(object sender, RoutedEventArgs e)
{
janela.Text = janela.Text + "4";
}
private void btn5_Click(object sender, RoutedEventArgs e)
{
janela.Text = janela.Text + "5";
}
private void btn6_Click(object sender, RoutedEventArgs e)
{
janela.Text = janela.Text + "6";
}
private void btn7_Click(object sender, RoutedEventArgs e)
{
janela.Text = janela.Text + "7";
}
private void btn8_Click(object sender, RoutedEventArgs e)
{
janela.Text = janela.Text + "8";
}
private void btn9_Click(object sender, RoutedEventArgs e)
{
janela.Text = janela.Text + "9";
}
private void btn0_Click(object sender, RoutedEventArgs e)
{
janela.Text = janela.Text + "0";
}
private void btnponto_Click(object sender, RoutedEventArgs e)
{
janela.Text = janela.Text + ",";
}
private void btnsoma_Click(object sender, RoutedEventArgs e)
{
operacao = "+";
primeiro += double.Parse(janela.Text);
janela.Text = "";
}
private void btnsubtracao_Click(object sender, RoutedEventArgs e)
{
operacao = "-";
primeiro += double.Parse(janela.Text);
janela.Text = "";
}
private void btnmultiplicacao_Click(object sender, RoutedEventArgs e)
{
operacao = "*";
primeiro += double.Parse(janela.Text);
janela.Text = "";
}
private void btndivisao_Click(object sender, RoutedEventArgs e)
{
operacao = "/";
primeiro += double.Parse(janela.Text);
janela.Text = "";
}
private void btnresto_Click(object sender, RoutedEventArgs e)
{
operacao = "%";
primeiro += double.Parse(janela.Text);
janela.Text = "";
}
private void btnraiz_Click(object sender, RoutedEventArgs e)
{
primeiro += double.Parse(janela.Text);
resutado = Convert.ToSingle(Math.Sqrt(primeiro));
janela.Text = resutado.ToString();
}
private void btnigual_Click(object sender, RoutedEventArgs e)
{
segundo = double.Parse(janela.Text);
switch (operacao)
{
case "+":
resutado = primeiro + segundo;
janela.Text = resutado.ToString();
break;
case "-":
resutado = primeiro - segundo;
janela.Text = resutado.ToString();
break;
case "/":
resutado = primeiro / segundo;
janela.Text = resutado.ToString();
break;
case "*":
resutado = primeiro * segundo;
janela.Text = resutado.ToString();
break;
case "%":
resutado = primeiro % segundo;
janela.Text = resutado.ToString();
break;
}
}
private void btnlimpar_Click(object sender, RoutedEventArgs e)
{
janela.Text = "";
primeiro = 0;
segundo = 0;
operacao = null;
}
private void btncos_Click(object sender, RoutedEventArgs e)
{
primeiro += double.Parse(janela.Text);
resutado = Convert.ToSingle(Math.Sqrt(primeiro));
janela.Text = resutado.ToString();
}
private void btnsin_Click(object sender, RoutedEventArgs e)
{
primeiro += double.Parse(janela.Text);
resutado = Convert.ToSingle(Math.Sin(primeiro));
janela.Text = resutado.ToString();
}
private void btnfact_Click(object sender, RoutedEventArgs e)
{
primeiro += double.Parse(janela.Text);
//int i = 0;
primeiro = Convert.ToSingle(primeiro);
for (int i = primeiro - 1; i > 1; i--)
{
resutado *= i;
}
janela.Text = resutado.ToString();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
primeiro += double.Parse(janela.Text);
resutado = Convert.ToSingle(Math.Tan(primeiro));
janela.Text = resutado.ToString();
}
}
}