学习C#自作计算器,菜鸟初学,有大神的指点,希望做的不够好的地方请大家多多指导。同时希望非常无聊的大神能加些其它计算进去
可以做幂运算,根号运算,十进制与二进制互转,16进制与十进制互转
namespace WindowsFormsApplication15
{
public partial class 祥哥计算器 : Form
{
public 祥哥计算器()
{
InitializeComponent();
} #region 数字点击事件
/// <summary>
/// 按钮点击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "1";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "1";
SetNum(textBox2.Text);
}
}
private void button2_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "2";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "2";
SetNum(textBox2.Text);
}
}
private void button3_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "3";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "3";
SetNum(textBox2.Text);
}
}
private void button4_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "4";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "4";
SetNum(textBox2.Text);
}
}
private void button5_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "5";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "5";
SetNum(textBox2.Text);
}
}
private void button7_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "7";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "7";
SetNum(textBox2.Text);
}
}
private void button6_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "6";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "6";
SetNum(textBox2.Text);
}
}
private void button8_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "8";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "8";
SetNum(textBox2.Text);
}
}
private void button9_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "9";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "9";
SetNum(textBox2.Text);
}
}
private void button14_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "0";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "0";
SetNum(textBox2.Text);
}
}
/// <summary>
/// 小数点问题
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void buttonpoint_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += ".";
//if(textBox1.Text.IndexOf(".") >= 1)
// MessageBox.Show("已经有小数点了");
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += ".";
//if(textBox2.Text.IndexOf(".") >=1)
// MessageBox.Show("已经有小数点了");
SetNum(textBox2.Text);
}
}
private void button00_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "00";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "00";
SetNum(textBox2.Text);
}
}
private void buttonA_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "A";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "A";
SetNum(textBox2.Text);
}
} private void buttonB_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "B";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "B";
SetNum(textBox2.Text);
}
} private void buttonC_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "C";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "C";
SetNum(textBox2.Text);
}
} private void buttonD_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "D";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "D";
SetNum(textBox2.Text);
}
} private void buttonE_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "E";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "E";
SetNum(textBox2.Text);
}
} private void buttonF_Click(object sender, EventArgs e)
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
if (textBox1.Text.Length < 10)
textBox1.Text += "F";
SetNum(textBox1.Text);
}
else
{
if (textBox2.Text.Length < 10)
textBox2.Text += "F";
SetNum(textBox2.Text);
}
}
/// <summary>
/// 清空键与退格键
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button16_Click_1(object sender, EventArgs e) ///清空CE键
{
label1.Text = "";
textBox3.Clear();
textBox1.Clear();
textBox2.Clear();
}
private void buttondelete_Click(object sender, EventArgs e) ///退格键
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
textBox1.Text = textBox1.Text.Substring(0, textBox1.Text.Length - 1);
}
else
{
textBox2.Text = textBox2.Text.Substring(0, textBox2.Text.Length - 1);
}
}
#endregion
/// <summary>
/// 读取数字功能
/// </summary>
/// <param name="text"></param>
private void SetNum(string text) ///调用功能键
{
{
if (string.IsNullOrWhiteSpace(label1.Text))
{
textBox1.Text = text;
}
else
{
textBox2.Text = text;
}
}
}
/// <summary>
/// 四则运算
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button10_Click(object sender, EventArgs e) ///运算符号
{
if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text))
{
textBox1.Text = textBox3.Text;
textBox2.Text = "";
}
label1.Text = "+";
}
private void button11_Click(object sender, EventArgs e)
{
if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text)) {
textBox1.Text = textBox3.Text;
textBox2.Text = "";
label1.Text = "-";
}
//else
// label1.Text = "-";
else if (string.IsNullOrWhiteSpace(label1.Text)) if (string.IsNullOrWhiteSpace(textBox1.Text))
{
textBox1.Text += "-";
}
else
label1.Text = "-";
//else if (string.IsNullOrWhiteSpace(textBox2.Text))
else
textBox2.Text += "-";
}
private void button15_Click(object sender, EventArgs e)
{
if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text))
{
textBox1.Text = textBox3.Text;
textBox2.Text = "";
}
label1.Text = "×";
}
private void button13_Click(object sender, EventArgs e)
{
if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text))
{
textBox1.Text = textBox3.Text;
textBox2.Text = "";
}
label1.Text = "÷";
}
/// <summary>
/// 幂次与根号运算(目前只运算正根号)
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void buttonmi_Click(object sender, EventArgs e)
{
if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text))
{
textBox1.Text = textBox3.Text;
textBox2.Text = "";
}
label1.Text = "aⁿ";
}
private void buttongenhao_Click(object sender, EventArgs e)
{
if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text))
{
textBox1.Text = textBox3.Text;
textBox2.Text = "";
}
label1.Text = "√ ̄";
}
/// <summary>
/// 4种数据转换
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void buttonBool_Click(object sender, EventArgs e)
{
if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text))
{
textBox1.Text = textBox3.Text;
textBox2.Text = "";
}
label1.Text = "Dto2";
}
private void buttonHex_Click(object sender, EventArgs e)
{
if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text))
{
textBox1.Text = textBox3.Text;
textBox2.Text = "";
}
label1.Text = "DtoFF";
}
private void button2toD_Click(object sender, EventArgs e)
{
label1.Text = "2toD";
}
private void buttonFFtoD_Click(object sender, EventArgs e)
{
if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text))
{
textBox1.Text = textBox3.Text;
textBox2.Text = "";
}
label1.Text = "FFtoD";
}
/// <summary>
/// 计算结果
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button12_Click(object sender, EventArgs e) ///=号控制
{
Int32 sum1; string Str1;
switch (label1.Text)
{
case "Dto2":
sum1 = Convert.ToInt32(textBox1.Text);
textBox3.Text = Convert.ToString(sum1, 2);
break;
case "DtoFF":
sum1 = Convert.ToInt32(textBox1.Text);
textBox3.Text = Convert.ToString(sum1, 16);
textBox3.Text = textBox3.Text.ToUpper();
break;
case "2toD":
Str1 = Convert.ToString(textBox1.Text);
textBox3.Text = Convert.ToInt32(Str1, 2).ToString();
break;
case "FFtoD":
Str1 = Convert.ToString(textBox1.Text);
textBox3.Text = Convert.ToInt32(Str1, 16).ToString();
break;
default:
textBox3.Text = calNum(Convert.ToDouble(textBox1.Text), Convert.ToDouble(textBox2.Text));
break;
}
}
/// <summary>
/// 计算算法
/// </summary>
/// <param name="num1"></param>
/// <param name="num2"></param>
/// <returns></returns>
private string calNum(double num1, double num2) /// 计算
{
double sum = 0;
switch (label1.Text)
{
case "+":
sum = num1 + num2;
break;
case "-":
sum = num1 - num2;
break;
case "×":
sum = num1 * num2;
break;
case "÷":
if (num2 != 0)
sum = num1 / num2;
else
MessageBox.Show("语法错误,除数不能为0,请重新输入...");
break;
case "aⁿ":
sum = Math.Pow(num1, num2);
break;
case "√ ̄":
if (num1 >= 0 && num2 != 0)
sum = Math.Pow(num1, 1 / num2);
else
MessageBox.Show("语法错误,根号内不能小于0且不能开0次方,请重新输入...");
break;
}
switch (PointBit.SelectedIndex) ///小数点控制
{
case 0:
return Convert.ToDouble(sum).ToString("f0");
case 1:
return Convert.ToDouble(sum).ToString("f1");
case 2:
return Convert.ToDouble(sum).ToString("f2");
case 3:
return Convert.ToDouble(sum).ToString("f3");
case 4:
return sum.ToString();
}
return sum.ToString();
}
}
}
namespace WindowsFormsApplication15{ public partial class 祥哥计算器 : Form { public 祥哥计算器() { InitializeComponent(); }
#region 数字点击事件 /// <summary> /// 按钮点击事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "1"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "1"; SetNum(textBox2.Text); } } private void button2_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "2"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "2"; SetNum(textBox2.Text); } } private void button3_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "3"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "3"; SetNum(textBox2.Text); } } private void button4_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "4"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "4"; SetNum(textBox2.Text); } } private void button5_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "5"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "5"; SetNum(textBox2.Text); } } private void button7_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "7"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "7"; SetNum(textBox2.Text); } } private void button6_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "6"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "6"; SetNum(textBox2.Text); } } private void button8_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "8"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "8"; SetNum(textBox2.Text); } } private void button9_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "9"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "9"; SetNum(textBox2.Text); } } private void button14_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "0"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "0"; SetNum(textBox2.Text); } } /// <summary> /// 小数点问题 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonpoint_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "."; //if(textBox1.Text.IndexOf(".") >= 1) // MessageBox.Show("已经有小数点了"); SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "."; //if(textBox2.Text.IndexOf(".") >=1) // MessageBox.Show("已经有小数点了"); SetNum(textBox2.Text); } } private void button00_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "00"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "00"; SetNum(textBox2.Text); } } private void buttonA_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "A"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "A"; SetNum(textBox2.Text); } }
private void buttonB_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "B"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "B"; SetNum(textBox2.Text); } }
private void buttonC_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "C"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "C"; SetNum(textBox2.Text); } }
private void buttonD_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "D"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "D"; SetNum(textBox2.Text); } }
private void buttonE_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "E"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "E"; SetNum(textBox2.Text); } }
private void buttonF_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(label1.Text)) { if (textBox1.Text.Length < 10) textBox1.Text += "F"; SetNum(textBox1.Text); } else { if (textBox2.Text.Length < 10) textBox2.Text += "F"; SetNum(textBox2.Text); } } /// <summary> /// 清空键与退格键 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button16_Click_1(object sender, EventArgs e) ///清空CE键 { label1.Text = ""; textBox3.Clear(); textBox1.Clear(); textBox2.Clear(); } private void buttondelete_Click(object sender, EventArgs e) ///退格键 { if (string.IsNullOrWhiteSpace(label1.Text)) { textBox1.Text = textBox1.Text.Substring(0, textBox1.Text.Length - 1); } else { textBox2.Text = textBox2.Text.Substring(0, textBox2.Text.Length - 1); } } #endregion /// <summary> /// 读取数字功能 /// </summary> /// <param name="text"></param> private void SetNum(string text) ///调用功能键 { { if (string.IsNullOrWhiteSpace(label1.Text)) { textBox1.Text = text; } else { textBox2.Text = text; } } } /// <summary> /// 四则运算 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button10_Click(object sender, EventArgs e) ///运算符号 { if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text)) { textBox1.Text = textBox3.Text; textBox2.Text = ""; } label1.Text = "+"; } private void button11_Click(object sender, EventArgs e) { if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text))
{ textBox1.Text = textBox3.Text; textBox2.Text = ""; label1.Text = "-"; } //else // label1.Text = "-"; else if (string.IsNullOrWhiteSpace(label1.Text))
if (string.IsNullOrWhiteSpace(textBox1.Text)) { textBox1.Text += "-"; } else label1.Text = "-"; //else if (string.IsNullOrWhiteSpace(textBox2.Text)) else textBox2.Text += "-"; } private void button15_Click(object sender, EventArgs e) { if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text)) { textBox1.Text = textBox3.Text; textBox2.Text = ""; } label1.Text = "×"; } private void button13_Click(object sender, EventArgs e) { if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text)) { textBox1.Text = textBox3.Text; textBox2.Text = ""; } label1.Text = "÷"; } /// <summary> /// 幂次与根号运算(目前只运算正根号) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonmi_Click(object sender, EventArgs e) { if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text)) { textBox1.Text = textBox3.Text; textBox2.Text = ""; } label1.Text = "aⁿ"; } private void buttongenhao_Click(object sender, EventArgs e) { if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text)) { textBox1.Text = textBox3.Text; textBox2.Text = ""; } label1.Text = "√ ̄"; } /// <summary> /// 4种数据转换 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonBool_Click(object sender, EventArgs e) { if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text)) { textBox1.Text = textBox3.Text; textBox2.Text = ""; } label1.Text = "Dto2"; } private void buttonHex_Click(object sender, EventArgs e) { if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text)) { textBox1.Text = textBox3.Text; textBox2.Text = ""; } label1.Text = "DtoFF"; } private void button2toD_Click(object sender, EventArgs e) { label1.Text = "2toD"; } private void buttonFFtoD_Click(object sender, EventArgs e) { if (!string.IsNullOrWhiteSpace(textBox1.Text) && !string.IsNullOrWhiteSpace(textBox2.Text)) { textBox1.Text = textBox3.Text; textBox2.Text = ""; } label1.Text = "FFtoD"; } /// <summary> /// 计算结果 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button12_Click(object sender, EventArgs e) ///=号控制 { Int32 sum1; string Str1; switch (label1.Text) { case "Dto2": sum1 = Convert.ToInt32(textBox1.Text); textBox3.Text = Convert.ToString(sum1, 2); break; case "DtoFF": sum1 = Convert.ToInt32(textBox1.Text); textBox3.Text = Convert.ToString(sum1, 16); textBox3.Text = textBox3.Text.ToUpper(); break; case "2toD": Str1 = Convert.ToString(textBox1.Text); textBox3.Text = Convert.ToInt32(Str1, 2).ToString(); break; case "FFtoD": Str1 = Convert.ToString(textBox1.Text); textBox3.Text = Convert.ToInt32(Str1, 16).ToString(); break; default: textBox3.Text = calNum(Convert.ToDouble(textBox1.Text), Convert.ToDouble(textBox2.Text)); break; } } /// <summary> /// 计算算法 /// </summary> /// <param name="num1"></param> /// <param name="num2"></param> /// <returns></returns> private string calNum(double num1, double num2) /// 计算 { double sum = 0; switch (label1.Text) { case "+": sum = num1 + num2; break; case "-": sum = num1 - num2; break; case "×": sum = num1 * num2; break; case "÷": if (num2 != 0) sum = num1 / num2; else MessageBox.Show("语法错误,除数不能为0,请重新输入..."); break; case "aⁿ": sum = Math.Pow(num1, num2); break; case "√ ̄": if (num1 >= 0 && num2 != 0) sum = Math.Pow(num1, 1 / num2); else MessageBox.Show("语法错误,根号内不能小于0且不能开0次方,请重新输入..."); break; } switch (PointBit.SelectedIndex) ///小数点控制 { case 0: return Convert.ToDouble(sum).ToString("f0"); case 1: return Convert.ToDouble(sum).ToString("f1"); case 2: return Convert.ToDouble(sum).ToString("f2"); case 3: return Convert.ToDouble(sum).ToString("f3"); case 4: return sum.ToString(); } return sum.ToString(); } }}
学习C#自作计算器,菜鸟初学,有大神的指点,希望做的不够好的地方请大家多多指导。同时希望非常无聊的大神能加些其它计算进去的更多相关文章
- 初学jquery,自己写的一个jquery幻灯片,代码有些笨拙,希望有大神可以指点一二,精简一下代码
html代码 <div class="picCon"> <div class="bigPic"> <ul> <li c ...
- jQuery实现购物车多物品数量的加减+总价计算
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3. ...
- 忘记block格式 xib加载没有计算导航栏和tabbar的大小
敲inlineBlock xib加载没有计算导航栏和tabbar的大小 /将这个属性改为no self.tabBarController.tabBar.translucent = NO; 判断优化,两 ...
- zw·10倍速大数据与全内存计算
zw·10倍速大数据与全内存计算 zw全内存10倍速计算blog,早就在博客园机器视觉栏目发过,大数据版的一直挂着,今天抽空补上. 在<零起点,python大数据与量化交易>目录中 htt ...
- PCB 加投率计算实现基本原理--K最近邻算法(KNN)
PCB行业中,客户订购5000pcs,在投料时不会直接投5000pcs,因为实际在生产过程不可避免的造成PCB报废, 所以在生产前需计划多投一定比例的板板, 例:订单 量是5000pcs,加投3%,那 ...
- JQuery购物车多物品数量的加减+总价计算
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 学习STM32单片机,从菜鸟到牛人就是这样简单(配视频资料)
我想说,为了学习单片机而去学习单片机的思路不对. 你问,如何系统地入门学习stm32? 本身就是一个错误的问题.假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习. 你要考虑的 ...
- PHP学习笔记02——简易计算器
<!DOCTYPE html> <html> <head> <title>PHP简易计算器</title> </head> &l ...
- C#基础学习第一天(.net菜鸟的成长之路-零基础到精通)
1.Net平台和C#编程语言的概念 2.桌面应用程序: 我们要使用桌面应用程序,必须要安装该应用程序的客户端. winform应用程序. Application:应用程序 Internet:互联网应用 ...
随机推荐
- SQL SERVER SELECT语句中加锁选项的详细说明
共享锁(读锁)和排他锁(写锁) 共享锁(S锁):共享 (S) 用于不更改或不更新数据的操作(只读操作),如 SELECT 语句. 如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能 ...
- osg::Texture2D 贴纹理
#ifdef _WIN32 #include <Windows.h> #endif // _WIN32 #include<iostream> #include <osgV ...
- Inventor2018专业版软件安装激活教程
如果你安装的是Autodesk Inventor Professional 2018,那么序列号为:666-69696969,产品密钥为:797J1, 如果你安装的是Autodesk Inventor ...
- 清空表且id为0
sql命令: 用于清空某表的数据 且让自增的id重新从0开始 truncate table
- CentOS7下搭建Tomcat服务器
Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选.Tomcat 和 IIS ...
- 建立django项目的完整流程
简单的django登录项目 1.首先建立工程,建立工程请参照:https://www.cnblogs.com/effortsing/p/10394511.html 2.在Firstdjango工程项目 ...
- SpringCloud入门01之基础知识
一.Spring Cloud 什么是spring cloud, 为什么要使用微服务架构? 参考度娘 Spring Cloud是一系列框架的有序集合, 它利用Spring Boot的开发便利性巧妙地简化 ...
- 【miscellaneous】关于gst ffmpeg插件的安装心得
1 一直通过软件源不能将ffmpeg插件进行安装 2 下载源码编译一直失败 说是需要依赖bad插件 3 bad插件安装不上在ubuntu下 解决办法: 应该直接查找ffmpeg插件的安装办法,不是只有 ...
- Dapper操作Sql Server和MySql数据库
1. 在配置文件web.config中添加连接字符串 <connectionStrings> <add name="sqlconnectionString" co ...
- 学习JavaScript之this,call,apply(转)
转自: http://www.h5cn.com/js/jishu/2016/0128/17884.html 在之前的JavaScript学习中,this,call,apply总是让我感到迷惑,但是他们 ...