ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C# 일반 계산기
    C# 2022. 3. 12. 00:34

    허접하지만 만들어 봤습니다...

    계산기

    제 계산기에서 %는 나머지를 구합니다 코딩에서의 %와 의미가 같습니다.

    string first_value = " ", second_value = "0";
    int sign = 0;

    위 변수들은 차례로 숫자를 입력받고, 계산 후 저장하고, 부호를 구별하는데 사용합니다.

     private void N1_Click(object sender, EventArgs e)
            {
                first_value += '1';
                label1.Text = "" + double.Parse(first_value);
            }

    위 코드는 숫자 1버튼입니다.

    누를때 마다 first_value에 문자열로 저장하고 label1에 출력시킵니다.

    private void Button17_Click(object sender, EventArgs e)
            {
                if (sign==0)
                {
                    second_value = first_value;
                }
                else if (sign==1) 
                {
                    double a = double.Parse(first_value) + double.Parse(second_value);
                    second_value = a.ToString();
                }
                else if (sign == 2) 
                {
                    double a = double.Parse(second_value) - double.Parse(first_value);
                    second_value = a.ToString();
                }
                else if (sign == 3)
                {
                    double a = double.Parse(second_value) * double.Parse(first_value);
                    second_value = a.ToString();
                }
                else if (sign == 4)
                {
                    double a = double.Parse(second_value) / double.Parse(first_value);
                    second_value = a.ToString();
                }
                else if (sign == 5)
                {
                    double a = double.Parse(second_value) % double.Parse(first_value);
                    second_value = a.ToString();
                }
                label2.Text = "" + double.Parse(second_value)+'+';
                first_value = "";
                label1.Text = "";
                sign = 1; 
            }

    위에 코드는 +버튼입니다. sign을 사용하여 그전에 어떤 버튼을 눌렀고 계산할지 구분합니다.

    계산후 first_value는 초기화 시키고 second_value에 계산값을 저장합니다.

    label2에는 second_value를 출력하고 label1은 초기화 시킵니다.

     private void Button13_Click(object sender, EventArgs e)
            {
                if (sign == 0)
                {
                    second_value = first_value;
                }
                else if (sign == 1)
                {
                    double a = double.Parse(first_value) + double.Parse(second_value);
                    second_value = a.ToString();
                }
                else if (sign == 2)
                {
                    double a = double.Parse(second_value) - double.Parse(first_value);
                    second_value = a.ToString();
                }
                else if (sign == 3)
                {
                    double a = double.Parse(second_value) * double.Parse(first_value);
                    second_value = a.ToString();
                }
                else if (sign == 4)
                {
                    double a = double.Parse(second_value) / double.Parse(first_value);
                    second_value = a.ToString();
                }
                else if (sign == 5)
                {
                    double a = double.Parse(second_value) % double.Parse(first_value);
                    second_value = a.ToString();
                }
                label2.Text = "" + double.Parse(second_value) + '=';
                first_value = "" + double.Parse(second_value);
                label1.Text = "" + double.Parse(second_value);
                sign = 0;
            }

    위 코드는 =버튼입니다. first_value를 초기화시키지 않고 저장해 label1에 출력합니다.

     private void Button18_Click(object sender, EventArgs e)
            {
                first_value = "";
                label1.Text = "";
            }

    위 코드는 CE버튼입니다. first_value와 label1의 값을 초기화 시킵니다.

       private void CE_Click(object sender, EventArgs e)
            {
                label2.Text = "";
                first_value = "";
                label1.Text = "";
                second_value = "0";
                sign = 0;
            }

    위 코드는 C버튼입니다. 전체를 초기화 시킵니다.

     

    실행결과

     

    실행화면입니다.

     

     

     

    앞으로 %변경, 소수점과 +/-는 언젠가 추가예정입니다..

    'C#' 카테고리의 다른 글

    C# 004 판단문을 사용한 BMI 계산기  (0) 2022.03.15
    C# 003 관계연산자  (0) 2022.03.15
    C# 002 산술연산자  (0) 2022.03.15
    C# 001 입출력  (0) 2022.03.15
    C# BMI 계산기  (0) 2022.03.11

    댓글

Designed by Tistory.