C# 3강-6강(인프런)

차차·2021년 9월 14일
0

C#

목록 보기
9/14

계산기 만들기 (visual studio web form)

  • form 에서 textbox 와 button 을 활용하여 계산기를 만든다
    property 에서 name 값이 해당 속성의 이름부분이 된다.
  • 버튼에서 클릭 이벤트를 추가한다. click 부분에 더블클릭하면 생성된다

코드보기


namespace HelloCSharpWin
{
	
    public enum Operators { Add,Sub, Multi,Div } // 열거형 데이터 타입
    
    public partial class Calculator : Form
    {
    

public int Result = 0; 
public bool isNewNum = true;
public   


public Calculator()
{
	InitializeComponent();
}


private void HelloLabel_Click(object sender, EventArgs e)
{
	int number = 1; 
   	int number2 = 2; 
    if(number1 <= number2)
    {
    
    }

}



private void SumNumbers_Click(object sender,EventArgs e)
{

	int number1 = 0; 
    int number2 = 0 ;
	
   //validation처리해주는 부분 : 그 값이 사용하기 적합한지 확인하는 작업
	if(String.isNullOrWhiteSpace(Sum1.Text == "")) //null이거나 공백인 경우 bool 타입으로 리턴해준다 
    {
    	MessageBox.Show("Sum1에 숫자를 입력해주세요."); //alert과 비슷하다 
    	Sum1.Focus(); // 커서 깜빡깜빡
        return ;
    }
    
    if(int.TryParse(Sum1.Text, out number1) == false)
    {
    	MessageBox.Show("Sum1에 문자가 들어왔습니다. 숫자를 입력하세요.");
        Sum1.SelectAll(); // 입력값 선택해주는것 
        Sum1.Focus();
        return; 
    }
    
    
    
    if(String.isNullOrWhiteSpace(Sum2.Text == ""))
    {
    	MessageBox.Show("Sum2에 숫자를 입력해주세요."); //alert과 비슷하다 
        return ;
    }
    
    if(int.TryParse(Sum2.Text, out number2) == false)
    {
    	MessageBox.Show("Sum2에 문자가 들어왔습니다. 숫자를 입력하세요.");
        return; 
    }
    
    
    
	// int.tryParse (string s , out int result)  : int로 바꿔지면 true를 리턴 아니면 false , true 일 경우 그 값이 out 값으로 들어간다 
    
    
    
	 number 1 = Convert.Toint32(Sum1.Text);
     number 2 = Convert.Toint32(Sum2.Text);
    
    int sum = Add(number1, number2);
    SumResult .Text = sum.ToString(); // 모든 데이터 타입에서 tostring메서드가 있다. 
    
    
}
// function 작성해보기
public int Add(int number1, int number2)
{
	int sum = number1 + number2; 
    return sum;
}

public fload Add2(float number1, float number2)
{
	float sum = number1+ number2; 
    	return sum;
}

public int Sub(init number1 , int numbber2)
{
	int sub = number1 - number2; 
    return sub;
}

public void NumButton1_Click(object sender, EventArgs e) // sender 는 이벤트를 발생시킨 값을 파라미터로 받는다. 

{
	Button numButton = (Button)sender;
	SetNum(numButton.Text);
}

public void NumButton2_Click(object sender, EventArgs e)
{
	SetNum("2");
}

public void SetNum(string num)
{
	if(isNEwNum)
    {
    	NumScreen.text = num; 
        isNewNUm = false;
    
    }
    else if(NumScreen.Text == "0")
    {
    	NumScreen.Text = num;
    }
    else
    {
    	NumScreen.Text= Numscreen.Text+num;
    }
}

private void NumPlus_Click(object sender, EventArgs e )
{
	if (isNewNum == false) 
    {
    
    int num = int.Parse(NumScreen.Text);
    if(Opt = Operators.Add)
    Result += num; 
    else if(Opt = Operators.Sub)
    	Result = Result - num;
    
    
    NumScreen.Text = Result.ToString();
    isNewNum= true;
   }
   
    Button optButton = (Button) sender;
    if (optButton.Text == "+")
    	Opt = Operators.Add;
    else if( optButton.Text== "-")
    	Opt = Operators.Sub;
    
    
		}
        private void NumClear_Click(object sender, EventArgs e)
        {
        	Result = 0 ; 
            isNewNum = true;
            Opt = Operators. Add;
            
            NumScreen.Text = "0"; 
        }
	}
}

열거형 데이터 타입

  • enum 이라는 키워드를 통해 내가 원하는 데이터 타입을 만들고 (Season) 그 안에 해당할 수 있는 값을 모두 작성한다 {Spring, Summer, Fall, Winter}

그리고 사용할 때에는 해당 데이터 타입으로 변수를 만들어서 사용할 수 있다.
데이터타입을 입력하고 . 을 입력하면 값을 선택할 수 있다.

profile
개발하는 돌멩이🙄🙄👻

0개의 댓글