解析算術表示式字串

2021-04-26 06:33:04 字數 895 閱讀 3456

// expression.cpp : main project file.

// 表示式計算+-*/四則運算,只有整數,沒有括號,可以有空格。

#include

"stdafx.h"

#include

#include

class

expression

//計算, 如果成功,返回空字串,結果儲存在result中,否則返回錯誤資訊。

char * calculat()

} if( i == 22 )    // +/- 號太多

return "the symbols of +/- more then 10.";

if( *error )    // 其它錯誤

return error;

list[i++] = a1;    //存最後乙個數

//第二部,計算加減法

result = list[0];

for( int j = 1; j < i; j++ )

return ""; }

//轉換乙個數,返回浮點型,便於除法計算。

double convert()

return atoi( p ); }

int symbols()

} };

intmain()

if( (*buffer == 'q') || (*buffer == 'q') )

break;

if( !i )

printf( "/nplease enter the expression./n");

else if( i >= 80 )

else

else

} }

}

解析算術表示式

現有字串形式的算術表示式,求計算其值。string str1 2000 600 3 300 2 string str2 2000 600.389895334 2 300 2 6 100 求解方法如下 讀取公式,返回結果。param express 算術公式 return 結果字串 保留兩位小數 pu...

利用棧解析算術表示式

在沒有接觸到棧這種資料結構時,一直覺得用程式計算四則表示式是件相當繁瑣的事。但利用棧,問題就立刻變得容易許多。解析任何包括 和0到9數字組成的算術表示式,並計算其結果。中綴表示式就是通常所說的算術表示式,比如 1 2 3 4。字尾表示式是指通過解析後,運算子在運算數之後的表示式,比如上式解析成字尾表...

Java解析字串表示式 逆波蘭表示式的計算

問題來由 讀入乙個字串形式的四則運算表示式,輸出對應的計算結果。如讀入的是 6 5 2 3 8 3 那麼解析後的輸出結果應為288。思路 一般的計算過程是這樣的,首先計算優先順序最高的小括號裡面的內容,即 5 2 3 8 3 將 2 3 的計算結果並存為a,接著用計算 a 8 並存為b 計算 5 b...