namespace 계산기
{
public enum Operators { sum, sub, multi, div}
* 열거형 데이터
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public int Result = 0;
public bool IsNuNum = true;
public Operators opt = Operators.sum;
* 기본값 설정
private void button10_Click(object sender, EventArgs e)
{
Button ClickNumber = (Button)sender;
if (IsNuNum)
{
Screen.Text = ClickNumber.Text;
IsNuNum = false;
}
else if (IsNuNum==false)
{ ClickNum(ClickNumber.Text); }
}
* 계산기 숫자 버튼이 눌릴때에 효과를 1개의 Handler로 통일.
Button ClickNumber = (Btton)sender;
public void ClickNum(String Num)
{
if (Screen.Text == "0")
Screen.Text = Num;
else
Screen.Text = Screen.Text + Num;
}
* 숫자 버튼이 계산기 화면에 표시되도록 하는 함수 생성. ClickNum()
private void button11_Click(object sender, EventArgs e)
{
if (IsNuNum == false)
{
int Set = int.Parse(Screen.Text);
if (opt == Operators.sum)
Result = Result + Set;
else if (opt == Operators.sub)
Result = Result - Set;
else if (opt == Operators.multi)
Result = Result * Set;
else if (opt == Operators.div)
Result = Result / Set;
Screen.Text = Result.ToString();
IsNuNum = true;
}
* 열거형 데이터, if 문, handler 통합을 이용한 코드.
IsNuNum이 false라면 Screen.text에 나와있는 문자를 Set라는 숫자데이터로 변형.
if에 열거형데이터를 적용시켜, Set을 Result=0(기본값)과 연산.
Button optButton = (Button)sender;
if (optButton.Text == "+")
opt = Operators.sum;
else if (optButton.Text == "-")
opt = Operators.sub;
else if (optButton.Text == "*")
opt = Operators.multi;
else if (optButton.Text == "/")
opt = Operators.div;
* 연산기호는 sum(+)가 기본값으로 설정되어 있음.
+0+숫자입력+숫자입력-숫자입력*숫자입력/숫자입력 의 형태이므로,
입력한 연산기호를 저장해놓고 다음에 다시 돌아오는 if문에서 사용해주어야 함.
private void button15_Click(object sender, EventArgs e)
{
Result = 0;
Screen.Text = Result.ToString();
IsNuNum = true;
opt = Operators.sum;
}
* 초기화(C) 버튼 코드
<Point>
1. Visual Studio 2019, window platform 로 작업.
2. 숫자 버튼이 화면에 표시 될 때, if문을 사용하여 '0'이 맨 앞자리에 오지 않도록하기.
3. Effect Handelr.. 같은 기능을 하는 여러 버튼을 1개의 Effect Handler로 통일.
(숫자 버튼, 연산자 버튼)
4. bool IsNuNum(임의의 지시어)=true or false 를 이용하여, 연산 기호 입력 후 새로운 숫자 입력되게 하기.
5. eurm 을 이용한 열거형 데이터 생성. (연산기호 열거형 데이터 사용에 용이.)
6. 숫자 <-> 문자 데이터 형태 변환.
int 숫자=int.parse(문자)
문자=숫자.ToString()
'개발자가 되어보자..공부공부 > 개발 일지' 카테고리의 다른 글
C# 유니티 공부 2 - 마우스/키보드 입력, 오브젝트 수평/수직 이동 (0) | 2022.12.03 |
---|---|
C# 유니티 공부 1 - 게임오브젝트 흐름 단계 (1) | 2022.12.03 |
C# 문법 복습2. (Class, 생성자, 접근제한자, 속성, 상속, as/is 키워드) (0) | 2022.12.02 |
C# 문법 복습 1. (변수, 형변환, 조건문, 함수 선언, 반복문, 배열) (0) | 2022.12.02 |
고양이 기분 표시하는 코딩 연습. (Class, 접근제한자, 생성자) (1) | 2022.11.30 |
댓글