問題: 做乙個計算器,要能夠進行+-*/等基本計算。後續可能支援冪運算,求對數,等運算。
效果大概是這樣
輸入1+2/3 =
輸出:ans =1.66
先從比較簡單的版本開始。
版本1:
思路:獲取使用者輸入,得到乙個字串型別的值 input。
然後對這個字串進行處理:
逐個字元的分析,如果出現 +-*/=這樣的運算子,則它的前面的那些字元一定是個數字,把這些字元轉換成數字。
然後提取運算子,進行運算即可。
先提取字串:
//簡單的計算器
#include#includeint main(void)
}
最後是完整**
//簡單的計算器
#include#include#includeint main(void)
} }//進行計算
int arr_index = 0; //下個要算的數字的索引
當然,這個計算器還有一些問題。
1.優先順序問題,這個計算器只會從左往右計算。
2.不支援()的形式,很多時候我們都會用到()
3.不支援一些常用運算,比如求平方,立方,根號等等。
這些問題留到第二版解決吧。
第一版先到這裡。 2018/11/2 22:07
每週一坑 3月第1周
每週一坑 3月第1周 以後打算開個專題叫每週一坑,有坑就寫,哈哈哈 當然今天寫的不止一坑,是兩坑 都是這週發生的 一 備份指令碼沒跑月備份 這個事是昨天發現的,額,月備份的目錄發現沒了好幾個月的資料 悄悄滴不要說出去,天知地知我知 沒有備份主要集中是兩個原因 2 沒調過定時指令碼,但是備份邏輯有問題...
簡單計算器
unit unit1 inte ce uses windows,messages,sysutils,variants,classes,graphics,controls,forms,dialogs,stdctrls,buttons,math math是數 算單元 type tform1 class ...
簡單計算器
a 簡單計算器 crawling in process.crawling failed time limit 1000msmemory limit 32768kb64bit io format i64d i64u submit status description 讀入乙個只包含 的非負整數計算表示...