參考自《visula c++2013入門經典第七版》
從命令列輸入表示式,然後分解識別各個符號間的數值,並進行相加減乘除,可支援小數點
// command_line_calculator.cpp : 定義控制台應用程式的入口點。
//#include "stdafx.h"
#include //for exit()
#include //for isdigit() 對單字元的操作
using namespace std;
void eatspaces(char* str);
double expr(const char* str);
double term(const char* str, size_t& index);
double numble(const char* str, size_t& index);
const size_t max;
int main()
; cout << endl
<< "welcome to your friendly calculation."
<< endl
<< "enter an expression , or an empty line to quit"
<< endl;
for (;;)
catch (const char* str)
} system("pause");
return 0;
}//陣列內複製移位,如果str【i】是空格,i就不會+1,只有j逐步+1
void eatspaces(char* str)
//分析數
double number(const char* str, size_t& index)
while (isdigit(*(str + index)))
value = 10 * value + (*(str + index++) - '0');
if (*(str + index) != '.')
return value;
//以下為讀取小數點後面的值 ,上面當數字後面的符號不是.就代表計算結束,返回value
double factor = 1.0;
while (isdigit(*(str + (++index)))) //因為。的原因,所以是 ++ index,判斷出小數點區段的數字內容。
return value;
}double term(const char* str, size_t& index)
return value;
}//計算表示式值
double expr(const char *str) }
}
命令列 計算器
using system using system.collections.generic using system.text namespace calc console.writeline 請再次輸入乙個數字。ls s console.readline trim li s convert.toi...
表示式計算器
早在上大學的時候,就想編寫乙個可以計算數學表示式的計算器,因為windowsxp自帶的計算器不支援表示式輸入,當要計算乙個算式時,不太方便。表示式計算器看似簡單,但要想把它做完善,不太容易,經過幾次改進之後,於一年前完成了這個小程式,雖然可能會有一些不足,不過也不打算再投入時間了,價值不大,只是拿來...
linux命令列計算器
下面總結linux下的三個命令,來介紹一下linux下的計算方法 1 bc bc在預設的情況下是個互動式的指 令。在bc工作環境下,可以使用以下計算符號 加法 減法 乘法 除法 指數 餘數 一行輸入多個計算,用 相隔 quit 退出 scale 3 設小數字 不進行互動而直接計算出結果 echo s...