티스토리 뷰
======================================================
안녕하세요 Doridori 입니다.
이번강의는 연산자에 대해서 강의 하도록 하겠습니다.
연산자 자체가 계산하는 내용이다 보니 예제도 계산기의 형태를 띄게 되었습니다.
1강부터 반복되는 형태의 구문을 계속 사용하고 있는데 (Textbox에서 글자를 가져와서 변형 해서 사용하는 식) 계속 사용 해서 익숙 해 질 경우 다른 Control 들을 가지고도 자연스럽게 사용 할수 있습니다.
화이팅!!
※ 항상 적는 내용인데 강의의 중반부 까지는 UI 작성에 대한 내용이니 노가다 작업이 귀찮으시면 Source UI를 받으셔서 UI 부분은 건너띄고 진행 하셔도 됩니다.
(개인적으로는 UI그리는 방법도 익숙해지면 좋을것 같습니다.)
======================================================
연산자
Source UI) Study_4_Operator(UI).zip
Soruce 전체) Study_4_Operator.zip
연산자의 경우 수식을 계산하거나 비교를 할때 항상 사용 하게 됨으로 어떤식으로 동작 하는 지 알아 두면 많은 도움이 됩니다.
이진법, 이산수학을 배웠다면 쉽게 넘어가실수 있습니다.
모른다고 하더라도 예제를 보면서 동작 하는 형식만 배워두면 필요 할 때 사용 하실 수 있습니다.
UI)
위에 있는 연산자들의 동작을 확인 하는 예제 입니다.
필요에 의해서 Textbox들이 많아 졌는데 차근차근 따라 해보시면 이해가 될것이라고 생각 합니다.
소스 Code 및 내용)
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 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 | /// <summary> /// 프로그램의 진입점 입니다. /// </summary> public Form1() { InitializeComponent(); } /// <summary> /// tboxResult의 Text가 변경 되었을 때의 Event 입니다. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void tboxResult_TextChanged(object sender, EventArgs e) { tboxResultBit.Text = Convert.ToString(int.Parse(tboxResult.Text), 2); // tboxResult에 적힌 문자를 2진수 숫자 형태로 변경 해서 tboxResultBit에 표시 합니다. } /// <summary> /// 화면에서 "<<" Button을 Click 했을 때 Event를 발생 시킵니다. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button1_Click(object sender, EventArgs e) { int iResult = 0; int iTemp = int.Parse(tboxResult.Text); int iNumber = int.Parse(tboxNumber.Text); iResult = iTemp << iNumber; // 해당 숫자를 iNumber 만큼 왼쪽으로 Shift 시킵니다. (숫자가 커짐) (Shift 되는 내용은 2진수 표시 부분으로 확인 합니다.) tboxResult.Text = iResult.ToString(); } /// <summary> /// 화면에서 ">>" Button을 Click 했을 때 Event를 발생 시킵니다. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button2_Click(object sender, EventArgs e) { int iResult = 0; int iTemp = int.Parse(tboxResult.Text); int iNumber = int.Parse(tboxNumber.Text); iResult = iTemp >> iNumber; // 해당 숫자를 iNumber 만큼 오른쪽으로 Shift 시킵니다. (숫자가 작아짐) (Shift 되는 내용은 2진수 표시 부분으로 확인 합니다.) tboxResult.Text = iResult.ToString(); } /// <summary> /// 화면에서 "++a" Button을 Click 했을 때 Event를 발생 시킵니다. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button8_Click(object sender, EventArgs e) { int iTemp = int.Parse(tboxResult.Text); tboxResult.Text = (++iTemp).ToString(); // 실행 되기 전 시점에 값을 +1 시킵니다. (tboxResult 와 tboxResultAfter 부분에서 증가 시점을 확인 합니다.) tboxResultAfter.Text = iTemp.ToString(); } /// <summary> /// 화면에서 "a++" Button을 Click 했을 때 Event를 발생 시킵니다. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button7_Click(object sender, EventArgs e) { int iTemp = int.Parse(tboxResult.Text); //iTempTest++; tboxResult.Text = (iTemp++).ToString(); // 실행 된 후에 값을 +1 시킵니다. (tboxResult 와 tboxResultAfter 부분에서 증가 시점을 확인 합니다.) tboxResultAfter.Text = iTemp.ToString(); } /// <summary> /// 화면에서 "+=" Button을 Click 했을 때 Event를 발생 시킵니다. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button4_Click(object sender, EventArgs e) { int iTemp = int.Parse(tboxResult.Text); int iNumber = int.Parse(tboxNumber.Text); iTemp += iNumber; // tboxResult 값에 tboxNumber 값을 더합니다. (iTemp = iTemp + iNumber; 와 동일 합니다.) tboxResult.Text = iTemp.ToString(); } /// <summary> /// 화면에서 "-=" Button을 Click 했을 때 Event를 발생 시킵니다. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button3_Click(object sender, EventArgs e) { int iTemp = int.Parse(tboxResult.Text); int iNumber = int.Parse(tboxNumber.Text); iTemp -= iNumber; // tboxResult 값에 tboxNumber 값을 뺍니다. (iTemp = iTemp - iNumber; 와 동일 합니다.) tboxResult.Text = iTemp.ToString(); } /// <summary> /// 화면에서 "&" Button을 Click 했을 때 Event를 발생 시킵니다. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button6_Click(object sender, EventArgs e) { int iTemp1 = int.Parse(tboxResult.Text); int iTemp2 = int.Parse(tboxResultAfter.Text); int iNumber = int.Parse(tboxNumber.Text); bool bResult = (iTemp1 > iNumber && iTemp2 > iNumber); // tboxResult와 tboxResultAfter의의 값 모두 tboxNumber의 값보다 클 경우 True를 반환 합니다. (And 조건) tboxAndOr.Text = bResult.ToString(); } /// <summary> /// 화면에서 "||" Button을 Click 했을 때 Event를 발생 시킵니다. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button5_Click(object sender, EventArgs e) { int iTemp1 = int.Parse(tboxResult.Text); int iTemp2 = int.Parse(tboxResultAfter.Text); int iNumber = int.Parse(tboxNumber.Text); bool bResult = (iTemp1 > iNumber || iTemp2 > iNumber); // tboxResult와 tboxResultAfter의의 값중 하나라도 tboxNumber의 값보다 클 경우 True를 반환 합니다. (And 조건) tboxAndOr.Text = bResult.ToString(); } | cs |
강의)
'C# > C# 강좌 Winform' 카테고리의 다른 글
Doridori C# 강의) 6.주석 (2) | 2018.06.10 |
---|---|
Doridori C# 강의) 5.Enum(열거형) (45) | 2018.06.02 |
Doridori C# 강의) 3.프로그램의 기본 형태와 Method (10) | 2018.05.20 |
Doridori C# 강의) 2.DataType과 Overflow (15) | 2018.05.13 |
Doridori C# 강의) 1.string (74) | 2018.05.07 |
- Total
- Today
- Yesterday
- 술
- C# 강의
- 나들이
- 와인
- 보드카
- 주말
- 맥주
- 아이랑
- 하이볼
- WinForm
- 막걸리
- 도리도리
- C# 강좌
- 모바일
- 칵테일
- C# 기초 강의
- 증류주
- 프로그램 강의
- 맛집
- Visual Studio
- C#
- 도리도리 C#
- 전통주
- 게임
- 가볼만한 곳
- 소주
- 광저우
- 서울
- 가볼만한곳
- 위스키
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |