๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ–ฅ๏ธ/C#

[C#] ์˜ˆ์ œ๋กœ ๋ฐฐ์šฐ๋Š” C# 02~04: ๊ฐ„๋‹จํ•œ ๊ณ„์‚ฐ๊ธฐ ๊ตฌํ˜„ํ•˜๊ธฐ

by HanaV 2023. 7. 28.
728x90

https://www.youtube.com/watch?v=PT4biWWXJKY&t=73s

 

์ด๋ฒˆ์—” ์ฝ˜์†”์•ฑ์ด ์•„๋‹ˆ๋ผ Windows Forms app์—์„œ ์ง„ํ–‰ํ•˜์˜€๋‹ค.

ํ™”๋ฉด์ด ๋ฐ”๋กœ ๋ณด์ด๊ณ , ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ์œผ๋กœ ๋ฐ”๋กœ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋Š”๊ฒŒ ๋งค์šฐ ํŽธํ–ˆ๋‹ค.

 

1. ์ด๋ฒคํŠธ ์ถ”๊ฐ€ํ•˜๊ธฐ

์•„๋ž˜๋Š” label์— click์ด๋ฒคํŠธ๋ฅผ ์ถ”๊ฐ€ํ•ด์„œ text๋ฅผ ๋ณ€ํ™”์‹œํ‚ค๋Š” ์ฝ”๋“œ์ด๋‹ค.

        private void label1_Click(object sender, EventArgs e)
        {
            label1.Text = "Hello C#!";
        }

์ฒซ ํ…์ŠคํŠธ๋Š” ํ•ด๋‹น ์ปจํŠธ๋กค์˜ ์†์„ฑ์—์„œ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

 

2. button, textbox ๋งŒ๋“ค๊ธฐ

๋„๊ตฌ์ƒ์ž์—์„œ button์„ ๋“œ๋ž˜๊ทธํ•ด์˜ค๊ณ , click ์ด๋ฒคํŠธ๋ฅผ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค.
๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์†์„ฑ์—์„œ ์ฒซ ํ…์ŠคํŠธ๋ฅผ ๋ฐ”๊ฟ€ ์ˆ˜ ์žˆ๋‹ค.

 private void sumNums_Click(object sender, EventArgs e)
        {
          //๋ฒ„ํŠผ ํด๋ฆญ ์‹œ ์‹คํ–‰๋  ํ•จ์ˆ˜๋ฅผ ์—ฌ๊ธฐ์— ์ž‘์„ฑ
        }

textbox๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋งŒ๋“ค์–ด์ฃผ๋ฉด ๋œ๋‹ค. label๊ณผ ๋™์ผํ•˜๊ฒŒ textbox์ด๋ฆ„.Text ๋กœ String ํ˜•์‹์œผ๋กœ ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

double num1 = Convert.ToDouble(sum1.Text);
double num2 = Convert.ToDouble(sum2.Text);

 

3. Combo box ์‚ฌ์šฉํ•˜๊ธฐ

์—ฐ์‚ฐ์ž๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋“œ๋กญ๋‹ค์šด ํ˜•ํƒœ๋กœ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ์—ˆ๋‹ค.
๋“œ๋กญ๋‹ค์šด ํ˜•ํƒœ๋ฅผ combo box๋กœ ์†์‰ฝ๊ฒŒ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ์—ฌ๊ธฐ์— ์‚ฌ์šฉํ•˜๋Š” ์ด๋ฒคํŠธ๋Š” Load์ด๋‹ค.

        //์—ฐ์‚ฐ๊ธฐํ˜ธ dropdown
        private void Form1_Load(object sender, EventArgs e)
        {
            string[] operators = { "+", "-", "*", "/"};
            operator1.Items.AddRange(operators);
            operator1.SelectedIndex = 0;
        }

combo box๋„ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ, .Text๋กœ ์ž…๋ ฅ๋œ ๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

string selectedOperator = operator1.Text;

 

4. ๊ณ„์‚ฐ๊ธฐ ๊ธฐ๋Šฅ ์ถ”๊ฐ€

๋‹จ์ˆœํ•˜๊ฒŒ if๋ฌธ์„ ์‚ฌ์šฉํ•ด์„œ ๊ณ„์‚ฐ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜์˜€๋‹ค.

        private void sumNums_Click(object sender, EventArgs e)
        {
            double num1 = Convert.ToDouble(sum1.Text);
            double num2 = Convert.ToDouble(sum2.Text);
            string selectedOperator = operator1.Text;

            if (selectedOperator == "+") 
            { 
                sumResult.Text = Convert.ToString(Add(num1, num2)); 
            }

            if (selectedOperator == "-")
            {
                sumResult.Text = Convert.ToString(Sub(num1, num2));
            }

            if (selectedOperator == "*")
            {
                sumResult.Text = Convert.ToString(Mul(num1, num2));
            }

            if (selectedOperator == "/")
            {
                sumResult.Text = Convert.ToString(Div(num1, num2));
            }

        }

        double Add(double num1, double num2)
        {
            double result = num1 + num2;
            return Math.Round(result, 10);
        }
        double Sub(double num1, double num2)
        {
            double result = num1 - num2;
            return Math.Round(result, 10);
        }
        double Mul(double num1, double num2)
        {
            double result = num1 * num2;
            return Math.Round(result, 10);
        }
        double Div(double num1, double num2)
        {
            double result = num1 / num2;
            return Math.Round(result, 10);
        }

 

5. ์˜ˆ์™ธ์ฒ˜๋ฆฌ

textbox์— ์ˆซ์ž๊ฐ€ ์•„๋‹Œ ๊ณต๋ฐฑ์ด๋‚˜ ๋ฌธ์ž๊ฐ€ ์ž…๋ ฅ๋˜์—ˆ์„ ๊ฒฝ์šฐ, ์˜ˆ์™ธ์ฒ˜๋ฆฌ๋ฅผ ํ†ตํ•ด ์—๋Ÿฌ๋ฅผ ๋ง‰๋Š”๋‹ค.

            //์˜ˆ์™ธ์ฒ˜๋ฆฌ
            if (String.IsNullOrWhiteSpace(sum1.Text) || String.IsNullOrWhiteSpace(sum2.Text))
            {
                MessageBox.Show("์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”");
                return;
            }
            if (!double.TryParse(sum1.Text, out double number1) || !double.TryParse(sum2.Text, out double number2))
            {
                MessageBox.Show("์ˆซ์ž๊ฐ€ ์•„๋‹Œ ๊ฐ’์ด ์ž…๋ ฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•ด์ฃผ์„ธ์š”");
                return;
            }

 

 

 

์™„์„ฑ๋œ ๋ชจ์Šต

728x90

"); wcs_do();