肖孜涵
摘 要:隨著社會經濟的發(fā)展,計算器在日常生活中扮演著越來越重要的角色,成為人們學習和工作不可或缺的工具,計算器的設計無論在何時都有著很大的實際意義。文章在分析簡易計算器的主要功能和設計思路的基礎上,使用C#語言對計算器進行了具體的程序開發(fā)與實現。
關鍵詞:C#;計算器;程序設計
引言
計算器作為必備的辦公工具,滲透在人們日常生活的每個角落,特別是隨著社會經濟的發(fā)展,人們需要處理的數據越來越多、越來越繁雜,計算器帶來的便捷也越來越明顯。雖然如今網絡和市面上的計算器已非常之多,但功能過于簡單的無法滿足個人需求,功能過多的價格較貴且很多功能根本用不到,所以設計一款簡單卻實用的計算器具有很大的實際意義。而C#是一種功能非常強大的編程語言,其易于掌握、支持跨平臺、面向對象的優(yōu)點使得它非常適合用來開發(fā)一些常用的界面工具,故本文介紹了簡易計算器的主要功能和設計思路,并在此基礎上使用C#語言進行了具體的程序開發(fā)與實現。
1 C#語言和開發(fā)工具
1.1 C#簡介
C#是一種面向對象的程序設計語言,是專門用于.NET的編程語言,用C#編寫的代碼總是在.NET Framework中運行(.NET Framework簡稱.NET,是微軟為開發(fā)應用程序創(chuàng)建的平臺)。使用C#可以編寫傳統(tǒng)的Windows桌面應用程序、Windows服務程序、Web應用程序、Web服務程序等。
1.2 開發(fā)工具Visual Studio
Visual Studio是一套完整的開發(fā)工具集,可以用來創(chuàng)建Windows平臺下的Windows應用程序和網絡程序,也可以用來創(chuàng)建網絡服務、智能設備應用程序和Office插件等。Visual Studio有多種版本,本次設計使用的版本是Visual Studio 2013。
2 簡易計算器的基本功能
精確、便捷、高效是計算器的主要特點,考慮到生活中人們常用的數據格式和運算需求,簡易計算器需要具備以下幾個功能:
(1)簡潔直觀的可操作界面;
(2)基本的四則運算和清零功能;
(3)支持正負數運算和小數操作;
(4)支持乘方與開方運算。
3 設計與實現
3.1 設計思路
計算器在使用過程中可分為四個步驟:輸入第一個操作數、輸入運算符、輸入第二個操作數、輸出結果。對應計算器的狀態(tài)過程為:首先輸入第一個數字,如果接下來繼續(xù)輸入數字,則保持當前狀態(tài),直到輸入運算符,接收第一個操作數的狀態(tài)結束,進入下一個狀態(tài)——接收第二個操作數,當點擊“=”按鈕,計算結果并顯示,之后,如果繼續(xù)輸入運算符,則將前一次的計算結果作為第一個操作數,進行下一輪計算。程序流程圖如圖1所示。
3.2 界面設計
計算器界面主要分為顯示窗口和操作按鈕,其中操作按鈕包括數字、小數點、運算符、等號和清零按鈕。顯示窗口和操作按鈕在Visual Studio中對應由文本框textbox和按鈕button來實現,在編碼過程中,要求對文本框和按鈕的命名標準化、大眾化,在本設計中,將各數字按鈕的name設置為btn+數字,如按鈕“1”被命名為“btn1”。
根據上文的功能分析,本次設計的計算器運算符包括:加、減、乘、除、乘方、開方。在進行界面設計時,遵從簡單、工整、直觀、便于操作的原則,設計完成后的界面視圖如圖2所示。
3.3程序設計
(1)變量定義
在對計算器進行程序設計時,有如下三個需要注意的事項:
如何判斷輸入的某個數字是屬于第一個操作數還是作為第二個操作數的第一位;
在輸入第二個操作數時,第一個操作數需要存儲;
運算符的判定。
為解決這些問題,定義了n1、op、startSecond三個變量,其中n1是double型,用來存儲第一個操作數;string型變量op表示運算符;bool型變量startSecond作為標志變量,用來判斷輸入的是否是第2個操作數的第一位。
(2)數字輸入
以按鈕“1”為例,如果顯示窗口里的數是0或者是輸入的第2個操作數的第一個數字,那么此時單擊按鈕“1”,顯示窗口顯示數字“1”,并把標志變量startSecond設置為False,否則在顯示窗口原有的數字后面追加數字“1”。代碼如下:
其余數字的代碼編寫思路與此類似。
(3)清零功能
清零即清空顯示窗口(重設為"0")和將中間變量賦成初始值值即可。
(4)運算符
以加法為例,當點擊按鈕"+"時,將變量op賦為"+",并將顯示窗口里的數字從字符串型轉化為double型,同時設置標志變量startSecond的值為True,表示接下來就要輸入第2個操作數的第一個數字了。代碼如下:
減法、乘法、除法、乘方和開方運算的設計思路與此一致。
(5)計算功能的實現
當點擊按鈕"="時,即開始進行計算,并將結果顯示出來。在編寫代碼時,可使用switch結構,對運算符變量op進行判斷。具體實現代碼如下:
(6)正負號和小數點
正負號和小數點的功能實現只需在代碼中相應賦值即可,其中需要注意的是:輸入小數點時,如果判斷顯示框中已經有了一個小數點,則拒絕繼續(xù)添加小數點,實現的代碼為:
4 結束語
本文對簡易計算器的功能需求進行了分析,提供了相應的設計思路,并在此基礎上利用C#語言給出了具體的實現方法,這對于研發(fā)人員進行計算器的設計具有一定的參考價值。
參考文獻
[1]杜少杰,王文紅.C#程序設計案例教程[M].北京理工大學出版社,2014:137-141.
[2]崔曉軍.C#.NET程序設計案例教程[M].清華大學出版社,2013:31-35.
[3]李文強.C#程序設計[M].清華大學出版社,2010.