ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 비주얼 프로그래밍 BMI 계산기(c#)
    비주얼 프로그래밍 2024. 3. 9. 21:26

    비주얼 프로그래밍 1주차 때 배운 BMI 계산기(c#) 복습

     

    비주얼 스튜디오의 C++의 콘솔 앱을 이용하여 새 프로젝트를 만들어준다.  

    그다음 프로젝트 이름을 적어준다 뒤에 cpp는 c++의 약자이다

    즉 나는 5번째 bmi계산기를 c++로 만든걸 약어로 005_bmicpp로 저장하였다.

    #include <iostream>
    using namespace std;
    
    int main()
    {
    	int height, weight;
    	cout << "키(cm): "; //키는 height 변수로 설정
    	cin >> height;
    
    	cout << "체중(kg) :";
    	cin >> weight; //몸무게는 weight 변수로 설정
    
    	double bmi = weight / (height / 100.0 * height / 100.0);
    	cout << "bmi = " << bmi;
    
    }

    키는 height를, 체중은 weight를 변수로 설정해 준다.

    여기서 유의할 점은 우리는 키를 cm로 입력하나 원래 계산식에선 m로 되어 있으므로 100을 꼭 나누어주어야 한다. 

    위의 코드를 ctrl + f5를 누르고 체중과 키를 입력하면 bmi지수가 뜬다

     

    C#으로  BMI 계산기 만들기 

    솔루션 탐색기 검색'에서 해당 솔루션을 마우스 오른쪽 클릭하면 아래 화면이 나온다.

    추가를 클릭하면 새 프로젝트가 나온다 새 프로젝트 클릭한다

    c#의 콘솔 앱을 선택해준다

    그 다음 프로젝트 이름을 저장한다. 나는C#의 약어인 cform을 사용하여 006_bmicform이렇게 지었다

    namespace _006_bmiform
    {
        internal class Program
        {
          static void Main(string[] args)
                {
                    double weight, height;
    
                    Console.Write("키(cm): ");
                    height = double.Parse(Console.ReadLine());
    
                    Console.Write("체중(kg): ");
                    weight = double.Parse(Console.ReadLine());
    
                    double bmi = weight / (height / 100.0 * height / 100.0);
                    Console.WriteLine("bmi =" + bmi);
                }
        }
    }
    ✔ C#에선 모든 입력값을 string으로 받기에 꼭 double.Parse()으로 변환하는 것이 눈에 보여야 한다.
    ✔ C#에서는 문자열+문자열=문자열, 문자열+숫자=문자열로 처리한다.
    ✔ 콘솔 창에 cw를 입력하고 tab을 두 번 연속 누르면 Console.WriteLine이 저절로 입력된다.

     

    위 코드를 디버그 하지 않고 시작(ctrl+F5)을 시켜주면 결과는 이렇게 나온다.

    BMI계산기  Windows Forms 앱(. NET Framework)

    위에 배운거와 똑같이 새 프로젝트를 만들어준다.

    이번에는 C#콘솔 앱이 아닌  Windows Forms 앱(. NET Framework)을 선택해 준다

    나는 이름을 007_bmicform으로 지정해줬다.

    새 프로젝트를 만들면

    이런 화면이 보일 것이다.

    위에 보기를 눌러 도구 상자를 고정 시켜 놓는다.

    Lable 하나를 클릭해 윈도우 창에 올려두면 오른쪽 하단에 속성 창이 뜬다.

    이것의 윗부분을 마우스로 끌고 와 윈도우 창에 옆에 두고 사용해도 문제없다

    위 사진을 자세히 보면 속성 밑에 label1이라고 쓰여 있는데 이것은 내가 가져온 레이블의 이름을 뜻한다.
    이번엔 Text만 사용할 것인데 클릭하여 수정해주면 된다. 

    버튼을 더블 클릭하면 코드를 작석할 수 있는 페이지로 넘어간다

           private void button1_Click(object sender, EventArgs e)
            {
                double h = double.Parse(textBox1.Text);
                double w = double.Parse(textBox2.Text);
                double bmi = w / (h / 100 * h / 100);
                label3.Text = "BMT = " + bmi;
            }

     button1_Click이라 쓰인 부분에 코드를 작성하면 된다  코드는 위와 같이 작성하면 된다

    ✔ double height = double.Parse(textBox1.Text)/100; 에서 double.Parse(textBox1.Text)은 textbox1에 있는 text를 실수로 변환시킨다는 뜻이다.
    ✔ label3.Text = "bmi = " + bmi.ToString();는 label3의 text에 "bmi = "와 계산 결과를 나타낸다는 뜻이다.

    위 코드를 디버그 하지 않고 시작(ctrl+F5)을 시켜주면 결과는 이렇게 나온다.

     

    위 코드를 실행하면 다음과 같이 나온다

     

    마지막으로 글을 마치며

    - scanf / cin / Console.ReadLine()

    - printf / cout / Console.WriteLine()

    맨위에 두 줄은 왼쪽부터 C / C++ / C#으로 나누어 진것이며 

    위쪽이 입력할때 쓰는것이고, 아래쪽이 출력할때 쓰는것이다 .

    여기서  Console.ReadLine(),Console.WriteLine() 이

    C#에 입력과 출력을 담당한다. 

    또한 형 변화의 경우 double = double.Parse(string) parse를 사용한다

Designed by Tistory.