C\#간단 한 계산기 기능 의 전체 인 스 턴 스 실현
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Collections;
using System.Threading;
using System.Diagnostics;
namespace CALCULATOR
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private string _sign;
private double _first = 10241024;
private double _second = 10241024;
private string _number;
private void button1_Click(object sender, EventArgs e)
{
_number += "1";
this.textBox1.Text += "1";
}
private void button2_Click(object sender, EventArgs e)
{
_number += "2";
this.textBox1.Text += "2";
}
private void button3_Click(object sender, EventArgs e)
{
_number += "3";
this.textBox1.Text += "3";
}
private void button4_Click(object sender, EventArgs e)
{
_number += "4";
this.textBox1.Text += "4";
}
private void button8_Click(object sender, EventArgs e)
{
_number += "5";
this.textBox1.Text += "5";
}
private void button7_Click(object sender, EventArgs e)
{
_number += "6";
this.textBox1.Text += "6";
}
private void button6_Click(object sender, EventArgs e)
{
_number += "7";
this.textBox1.Text += "7";
}
private void button5_Click(object sender, EventArgs e)
{
_number += "8";
this.textBox1.Text += "8";
}
private void button9_Click(object sender, EventArgs e)
{
_number += "9";
this.textBox1.Text += "9";
}
private void button10_Click(object sender, EventArgs e)
{
_number += "0";
this.textBox1.Text += "0";
}
private void button16_Click(object sender, EventArgs e)
{
//
SetNumber(Convert.ToDouble(_number));
if (_sign == null || _second == 10241024)
{
_sign = "+";
this.textBox1.Text += "+";
return;
}
if (_second != 10241024)
{
//
Computer ComPro = new Computer(_sign, _first, _second);
this.textBox1.Text = ComPro.Comt(out _first).ToString();
//
if (_first == 10241024.10241023)
{
this.textBox1.Text = "0";
MessageBox.Show(" !");
_number = null;
_first = 10241024;
_second = 10241024;
this.textBox1.Text = null;
_sign = null;
this.textBox1.Text = null;
}
//
_sign = "+";
this.textBox1.Text += "+";
_second = 10241024;
_number = null;
return;
}
}
private void button15_Click(object sender, EventArgs e)
{
//
SetNumber(Convert.ToDouble(_number));
if (_sign == null || _second == 10241024)
{
_sign = "-";
this.textBox1.Text += "-";
return;
}
if (_second != 10241024)
{
//
Computer ComPro = new Computer(_sign, _first, _second);
this.textBox1.Text = ComPro.Comt(out _first).ToString();
//
if (_first == 10241024.10241023)
{
this.textBox1.Text = "0";
MessageBox.Show(" !");
_number = null;
_first = 10241024;
_second = 10241024;
this.textBox1.Text = null;
_sign = null;
this.textBox1.Text = null;
}
//
_sign = "-";
this.textBox1.Text += "-";
_second = 10241024;
_number = null;
return;
}
}
private void button14_Click(object sender, EventArgs e)
{
//
SetNumber(Convert.ToDouble(_number));
if (_sign == null || _second == 10241024)
{
_sign = "*";
this.textBox1.Text += "*";
return;
}
if (_second != 10241024)
{
//
Computer ComPro = new Computer(_sign, _first, _second);
this.textBox1.Text = ComPro.Comt(out _first).ToString();
//
if (_first == 10241024.10241023)
{
this.textBox1.Text = "0";
MessageBox.Show(" !");
_number = null;
_first = 10241024;
_second = 10241024;
this.textBox1.Text = null;
_sign = null;
this.textBox1.Text = null;
}
//
_sign = "*";
this.textBox1.Text += "*";
_second = 10241024;
_number = null;
return;
}
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button11_Click(object sender, EventArgs e)
{
SetNumber(Convert.ToDouble(_number));
if (_sign == null || _second == 10241024)
{
_sign = "/";
this.textBox1.Text += "/";
return;
}
if (_second != 10241024)
{
//
Computer ComPro = new Computer(_sign, _first, _second);
this.textBox1.Text = ComPro.Comt(out _first).ToString();
//
if (_first == 10241024.10241023)
{
this.textBox1.Text = "0";
this.textBox1.Text = " !";
_number = null;
_first = 10241024;
_second = 10241024;
this.textBox1.Text = null;
_sign = null;
this.textBox1.Text = null;
}
//
_sign = "/";
this.textBox1.Text += "/";
_second = 10241024;
_number = null;
return;
}
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button12_Click(object sender, EventArgs e)
{
_number = null;
_first = 10241024;
_second = 10241024;
this.textBox1.Text = null;
_sign = null;
this.textBox1.Text = null;
}
private void button13_Click(object sender, EventArgs e)
{
SetNumber(Convert.ToDouble(_number));
// _second
if (_second == 10241024)
{
_second = Convert.ToDouble(_number);
_number = null;
}
// _first
if (_first == 10241024)
{
_first = Convert.ToDouble(_number);
_number = null;
}
// _sign
if (_sign == null)
{
_sign = "+";
}
//
Computer ComPro = new Computer(_sign, _first, _second);
this.textBox1.Text = ComPro.Comt(out _first).ToString();
//
if (_first == 10241024.10241023)
{
this.textBox1.Text = "0";
MessageBox.Show(" !");
_number = null;
_first = 10241024;
_second = 10241024;
this.textBox1.Text = null;
_sign = null;
this.textBox1.Text = null;
}
//
_sign = null;
_second = 10241024;
_number = null;
}
public class Computer
{
private string _sign;
private double _first;
private double _second;
public Computer(string str, double first, double second)
{
_sign = str;
_first = first;
_second = second;
}
//
public double Comt(out double first)
{
if (_sign == "+")
{
first = _first + _second;
return _first + _second;
}
else if (_sign == "-")
{
first = _first - _second;
return _first - _second;
}
else if (_sign == "*")
{
first = _first * _second;
return _first * _second;
}
else if (_sign == "/")
{
if (_second == 0)
{
first = 10241024.10241023;
return 10241024.10241023;
}
else
{
first = _first / _second;
return _first / _second;
}
}
else
{
first = 10241024.10241024;
return 10241024.10241024;
}
}
}
//
public void SetNumber(double number)
{
if (_first == 10241024 && _number != null)
{
_first = Convert.ToDouble(_number);
_number = null;
}
else if (_second == 10241024 && _number != null)
{
_second = Convert.ToDouble(_number);
_number = null;
}
}
private void timer1_Tick(object sender, EventArgs e)
{
this.label2.Text = DateTime.Now.ToString();
}
private void button24_Click(object sender, EventArgs e)
{
if (this.textBox1.Text == " ")
{
MessageBox.Show(" ");
this.textBox1.Text = Convert.ToInt64(textBox1.Text.ToString(), 2).ToString();
}
else
{
this.textBox1.Text = Convert.ToInt64(textBox1.Text.ToString(), 2).ToString();
}
}
private void button22_Click(object sender, EventArgs e)
{
if (this.textBox1.Text == " ")
{
MessageBox.Show(" ");
Int64 int64 = Convert.ToInt64(textBox1.Text.ToString(), 2);
this.textBox1.Text = Convert.ToString(int64,16);
}
else
{
Int64 int64 = Convert.ToInt64(textBox1.Text.ToString(), 2);
this.textBox1.Text = Convert.ToString(int64, 16);
}
}
private void button23_Click(object sender, EventArgs e)
{
if (this.textBox1.Text == " ")
{
MessageBox.Show(" ");
Int64 int64 = Convert.ToInt64(textBox1.Text.ToString(), 2);
this.textBox1.Text = Convert.ToString(int64, 8);
}
else
{
Int64 int64 = Convert.ToInt64(textBox1.Text.ToString(), 2);
this.textBox1.Text = Convert.ToString(int64, 8);
}
}
private void button21_Click(object sender, EventArgs e)
{
if (this.textBox1.Text == " ")
{
MessageBox.Show(" ");
Int64 int64 = Convert.ToInt64(textBox1.Text);
this.textBox1.Text = Convert.ToString(int64, 2);
}
else
{
Int64 int64 = Convert.ToInt64(textBox1.Text);
this.textBox1.Text = Convert.ToString(int64, 2);
}
}
private void button27_Click(object sender, EventArgs e)
{
double buffer1= Convert.ToDouble(textBox1.Text);
buffer1 = 1 / buffer1;
this.textBox1.Text = buffer1.ToString();
}
private void button17_Click(object sender, EventArgs e)
{
_number += ".";
this.textBox1.Text += ".";
}
private void button25_Click(object sender, EventArgs e)
{
double buffer1 = Convert.ToDouble(textBox1.Text);
buffer1 = buffer1 * buffer1;
this.textBox1.Text = buffer1.ToString();
}
private void button26_Click(object sender, EventArgs e)
{
if (this.textBox1.Text == " ")
{
MessageBox.Show(" ");
Int64 int64 = Convert.ToInt64(this.textBox1.Text);
Int64 temp1 = 1;
while (int64 > 1)
{
temp1 = temp1*int64 ;
int64--;
}
this.textBox1.Text = temp1.ToString();
}
else
{
Int64 int64 = Convert.ToInt64(this.textBox1.Text);
Int64 temp1 = 1;
while (int64 > 1)
{
temp1 = temp1 * int64;
int64--;
}
this.textBox1.Text = temp1.ToString();
}
}
private void button28_Click(object sender, EventArgs e)
{
//Int64 int64 = Convert.ToInt64(this.textBox1.Text);
//double temp=Math.Log10(int64);
//this.textBox1.Text = temp.ToString();
Double temp1, temp2;
string[] STRarry = new string[2];
STRarry = this.textBox1.Text.Split('.');
temp1 = Convert.ToDouble(STRarry[0]);
temp2 = Convert.ToDouble(STRarry[1]);
// double temp1 = Convert.ToDouble(this.textBox1.Text);
temp2 = Math.Log(temp2,temp1 );
this.textBox1.Text = temp2.ToString();
}
private void button18_Click(object sender, EventArgs e)
{
double temp1 = Convert.ToDouble(this.textBox1.Text);
double temp2 = Math.Sin(temp1);
this.textBox1.Text = temp2.ToString();
}
private void button19_Click(object sender, EventArgs e)
{
double temp1 = Convert.ToDouble(this.textBox1.Text);
double temp2 = Math.Cos(temp1);
this.textBox1.Text = temp2.ToString();
}
private void button20_Click(object sender, EventArgs e)
{
double temp1 = Convert.ToDouble(this.textBox1.Text);
double temp2 = Math.Tan(temp1);
this.textBox1.Text = temp2.ToString();
}
private void button33_Click(object sender, EventArgs e)
{
Double temp1, temp2;
string[] STRarry=new string[2];
STRarry=this.textBox1.Text.Split('.');
temp1 = Convert.ToDouble(STRarry[0]);
temp2 = Convert.ToDouble(STRarry[1]);
// double temp1 = Convert.ToDouble(this.textBox1.Text);
temp2 = Math.Pow(temp1,temp2);
this.textBox1.Text = temp2.ToString();
}
/// <summary>
/// e temp1
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button31_Click(object sender, EventArgs e)
{
double temp1 = Convert.ToDouble(this.textBox1.Text);
double temp2 = Math.Exp(temp1);
this.textBox1.Text = temp2.ToString();
}
private void button34_Click(object sender, EventArgs e)
{
double temp1 = Convert.ToDouble(this.textBox1.Text);
double temp2 = Math.Sqrt(temp1);
this.textBox1.Text = temp2.ToString();
}
private void button32_Click(object sender, EventArgs e)
{
Double temp1, temp2;
string[] STRarry = new string[2];
STRarry = this.textBox1.Text.Split('.');
temp1 = Convert.ToDouble(STRarry[0]);
temp2 = Convert.ToDouble(STRarry[1]);
// double temp1 = Convert.ToDouble(this.textBox1.Text);
temp2 = Math.IEEERemainder(temp1, temp2);
this.textBox1.Text = temp2.ToString();
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button30_Click(object sender, EventArgs e)
{
double buffer1 = Convert.ToDouble(textBox1.Text);
buffer1 =3.1415926*buffer1*buffer1;
this.textBox1.Text = buffer1.ToString();
}
/// <summary>
///
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button29_Click(object sender, EventArgs e)
{
Double temp1, temp2,temp3,p,area;
string[] STRarry = new string[3];
STRarry = this.textBox1.Text.Split('.');
temp1 = Convert.ToDouble(STRarry[0]);
temp2 = Convert.ToDouble(STRarry[1]);
temp3 = Convert.ToDouble(STRarry[2]);
// double temp1 = Convert.ToDouble(this.textBox1.Text);
p = (temp1 + temp2 + temp3) / 2;
area= p * (p - temp1) * (p - temp2) * (p - temp3);
area = Math.Sqrt(area);
this.textBox1.Text = area.ToString();
}
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
string str = e.Link.ToString();
Process.Start(str);
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
}
실행 효과:PS:여기 서 여러분 께 몇 가지 계산 도 구 를 추천 하여 참고 하 시기 바 랍 니 다.
온라인 일원 함수(방정식)구 해 계산 도구:
http://tools.jb51.net/jisuanqi/equ_jisuanqi
과학 계산기 온라인 사용고급 계산기 온라인 계산:
http://tools.jb51.net/jisuanqi/jsqkexue
온라인 계산기표준 계산기:
http://tools.jb51.net/jisuanqi/jsq
더 많은 C\#관련 내용 에 관심 이 있 는 독 자 는 본 사이트 의 주 제 를 볼 수 있다.
본 고 에서 말 한 것 이 여러분 의 C\#프로 그래 밍 에 도움 이 되 기 를 바 랍 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
WebView2를 Visual Studio 2017 Express에서 사용할 수 있을 때까지Evergreen .Net Framework SDK 4.8 VisualStudio2017에서 NuGet을 사용하기 때문에 패키지 관리 방법을 packages.config 대신 PackageReference를 사용해야...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.