티스토리 뷰

======================================================

안녕하세요 Doridori 입니다.

간만의 휴가를 알차게 보내고 다음 프로젝트를 준비 하고 있습니다. 

가족들과 본가도 다녀오고, 부산도 다녀오고, 그 동안 가보고 싶었던 장소도 다녀왔습니다. 

뭔가 미묘하게 짧은 듯 하지만 또 열심히 달려 봐야 하지 않을까 싶네요.

다음주 부터 바로 프로젝트 시작인데 이번에도 출장을 가게 되어 적응 할 때 까지는 또 뭘 준비하기 쉽지 않을 듯 합니다. 

이번에 자격증도 한번 공부 해 볼까 싶어서 정리가 되야 다시 돌아올듯 하네요. 

쉬었으니 빡시게 움직여 보도록 하겠습니다.

모두 화이팅 하십시오!!

======================================================

 

68. 프로그램 개발 하기 (실습)

Source UI) (이번 강의는 처음부터 다 만들었기 때문에 별도 UI가 없습니다.)

 

Soruce 전체)

68. 프로그램 개발 하기 (실습).zip
0.20MB

 

교재)

68. 프로그램 개발 하기 (실습).pdf
0.18MB

 

 

 

 지난번 "도리도리 하고 싶은거 다해" 쪽에 올려 놓은 "11. 프로그램 어떻게 만들지? (프로그램 개발 순서)"에 대한 실습 강의 입니다. 

2023.05.03 - [C#/도리도리 하고 싶은거 다해] - Doridori 하고싶은거다해) 11. 프로그램 어떻게 만들지? (프로그램 개발 순서)

 

Doridori 하고싶은거다해) 11. 프로그램 어떻게 만들지? (프로그램 개발 순서)

====================================================== 안녕하세요 Doridori 입니다. 프로젝트 마무리를 하고 일정이 엉망이 되어 버려서 휴가를 못쓰고 있었는데 어떻게 3일정도 휴가를 얻게 되었습니다. 최대

cwkcw.tistory.com

목업까지 진행 하였으니 이제 실제 개발을 해봐야 할텐데 저 같은 경우는 어떤 식으로 개발 하는지 제가 만드는 순서에 따라 실제로 만들어 보면서 눈에 보이도록 구성 해봤습니다. 

이 내용 부터 보신분은 길지 않은 내용이니 사전 내용을 미리 보고 오시면 이해가 편하실 듯 합니다. 

중요 내용의 경우 지난번 도리도리 하고 싶은거 다해 쪽에 올렸기 때문에 ppt 같은 경우 이번 강의에 대해서는 UI 관련 된 부분만 있다고 보시면 될듯 합니다. 

강의)

Source)

처음부터 끝까지 다 만들기 때문에 아주 간단한 예제 프로그램을 만들었습니다. 

덕분에 소스코드도 복잡하지 않고 짧습니다. 

한번 따라해보시면서 점점 더 살을 붙여 나가는 방법을 연습해 보시면 좋을 듯 합니다. 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
 
namespace BMI_Calculator
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
 
        /// <summary>
        /// Button Click Event
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnCal_Click(object sender, EventArgs e)
        {
            try
            {
 
                // BMI = 몸무게(kg) / {키(m) * 키(m)}
 
                // 1.값을 입력 받아서 BMI를 계산
                double dCM = double.Parse(tboxCM.Text) / 100;   // 미터 변환
                double dKG = double.Parse(tboxKG.Text);
 
                // textBox 입력 값에 대한 Interlock (tryParse 정도 사용 하면 될듯)
 
                double dRet = fBMICal(dCM, dKG);
 
 
                // 2. BMI 수치를 가지고 Trackbar를 이동
                int iRet = (int)(dRet * 10); // tbar 소수점 이동이 되지않아 자리수를 10배로 지정
 
                // tbar 수치 기준이 150 ~ 280 임으로 Interlock 추가
                if (iRet < 150)
                {
                    iRet = 150;
                }
                else if (280 < iRet)
                {
                    iRet = 280;
                }
                tbarRet.Value = iRet;
 
 
                // 3. 문자형태로 결과를 표시
                string strRet = CalResult(dRet);
                lblRet.Text = $"※ BMI 지수 [{dRet}]로 비만도 결과 [{strRet}] 입니다.";
 
            }
            catch (Exception ex)
            {
                lblRet.Text = ex.ToString();
            }
        }
 
        /// <summary>
        /// bmi 계산
        /// </summary>
        /// <param name="dCM">키(cm)</param>
        /// <param name="dKG">몸무게(kg)</param>
        /// <returns></returns>
        private double fBMICal(double dCM, double dKG)
        {
            // BMI = 몸무게(kg) / {키(m) * 키(m)}
            //double dCM = double.Parse("171.2") / 100;   // 미터 변환
            //double dKG = double.Parse("63.8");
 
            double dRet = dKG / (dCM * dCM);
 
            return Math.Round(dRet, 1);  // 소수점 1자리만 return
        }
 
 
        /// <summary>
        /// BMI 결과 값 return
        /// </summary>
        /// <param name="dRet">BMI 값</param>
        /// <returns></returns>
        private string CalResult(double dRet)
        {
            string strRet = string.Empty;
 
            if (dRet < 18.5)
            {
                strRet = "저체중";
            }
            else if (18.5 <= dRet && dRet < 23)
            {
                strRet = "정상";
            }
            else if (23 <= dRet && dRet < 25)
            {
                strRet = "과체중";
            }
            else if (25 <= dRet)
            {
                strRet = "비만";
            }
 
            return strRet; 
        }
 
    }
}
 
cs
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
글 보관함