The qingfro9 Blog.
2015년 9월 23일 수요일
C# Programming 공부하면서...(3)
간단하게 계산기를 만들어 보았다.
기능
계산기 기능 (+ , -, *, /)
C 누르면 초기화, CE 누르면 화면만 초기화
소수점 계산
+, - , * , / 눌렀을 때 그전과 같은 일 적용할 예정
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 calculatorExample { public partial class Form1 : Form { Double resultValue = 0; //결과값 저장할 부분 String operationPerformmed = ""; // operation 저장 부분 bool isOperator = false; public Form1() { InitializeComponent(); } private void button_click(object sender, EventArgs e) { if ((textBox_result.Text == "0") || (isOperator)) //textBox_result에 초기에 있는 0 값을 지워주는 부분 textBox_result.Clear(); isOperator = false; Button button = (Button)sender; //들어온(sender) 값을 button으로 넣어줌 if(button.Text==".") { if(!textBox_result.Text.Contains(".")) textBox_result.Text = textBox_result.Text + button.Text; }else textBox_result.Text =textBox_result.Text + button.Text; //textBox_result는 textBox이며, 여기 있는 'text값 + button값'을 넣는다. } private void operator_button(object sender, EventArgs e) { Button button = (Button)sender; //들어온(sender) 값을 button으로 넣어줌 if(resultValue != 0) { button13.PerformClick(); operationPerformmed = button.Text; label_result.Text = resultValue + " " + operationPerformmed; isOperator = true; } else { operationPerformmed = button.Text; resultValue = Double.Parse(textBox_result.Text); //숫자의 문자열 표현을 같은 값의 배정밀도 부동 소수점 숫자로 변환합니다. //Double.Parse : https://msdn.microsoft.com/ko-KR/library/windows/apps/fd84bdyt.aspx?f=255&MSPPError=-2147217396 label_result.Text = resultValue + " " + operationPerformmed; isOperator = true; } } private void button4_Click(object sender, EventArgs e) { textBox_result.Text = "0"; } private void button5_Click(object sender, EventArgs e) { textBox_result.Text = "0"; resultValue = 0; } private void button13_Click(object sender, EventArgs e) { //label_result.Text = "0"; switch(operationPerformmed) { case "+": textBox_result.Text = (resultValue + Double.Parse(textBox_result.Text)).ToString(); //resultValue : 입력한 값 , textBox_result.Text : 대상 값 break; case "-": textBox_result.Text = (resultValue - Double.Parse(textBox_result.Text)).ToString(); break; case "*": textBox_result.Text = (resultValue * Double.Parse(textBox_result.Text)).ToString(); break; case "/": textBox_result.Text = (resultValue / Double.Parse(textBox_result.Text)).ToString(); break; default: break; } resultValue = Double.Parse(textBox_result.Text); label_result.Text = ""; //label init } } }
댓글 없음:
댓글 쓰기
최근 게시물
이전 게시물
홈
피드 구독하기:
댓글 (Atom)
댓글 없음:
댓글 쓰기