線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:3363
推到 Plurk!
推到 Facebook!

在Delphi 7中如何計算一字串?如'5 * 3 + 5 * (8+2)'

答題得分者是:bugmans
jeffreck
高階會員


發表:247
回覆:340
積分:197
註冊:2003-01-23

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-01-23 13:56:46 IP:61.218.xxx.xxx 訂閱
請教各位前輩
在Delphi 7中如何計算一字串?
就是如
A := '5 * 3 5 * (8 2)'
A =65

因為要寫的程式,希望能給使用者自定公式..
不知是否有這類的元件或程式參考


感謝 各位前輩..
謝謝 * 1000
ChungLin.Net
中階會員


發表:2
回覆:33
積分:52
註冊:2006-07-26

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-01-23 14:23:54 IP:59.120.xxx.xxx 訂閱
你好,小弟不確定是否有可用的物件,給您一個參考方向,這方
面的寫法可以研究一下資料結構的前置式、中置式及後置式的算
法,會比較好處理,記得一般電腦的運算方式都是使用前置式的
方式處理( 有錯的話請前輩們訂正,年代久遠不太確定了 ),
這樣加減乘除上的運算會較好處理。

第4章 堆疊和佇列 裡面有些類似的做法可以看看
------
無限的想像,無盡的延伸。
Coffee
版主


發表:31
回覆:878
積分:561
註冊:2006-11-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-01-24 23:11:41 IP:203.73.xxx.xxx 訂閱
------
不論是否我發的文,在能力範圍皆很樂意為大家回答問題。
為了補我的能力不足之處,以及讓答案可以被重複的使用,希望大家能儘量以公開的方式問問題。
在引述到我的文時自然會儘量替各位想辦法,謝謝大家!
a6475
高階會員


發表:67
回覆:230
積分:154
註冊:2002-09-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2007-01-25 10:05:36 IP:218.167.xxx.xxx 訂閱
如果只是簡單的算式,
最作弊的方法就是丟去SQL語法運算;
str := ''5 * 3 5 * (8 2)'
sSQL := 'SELECT ' str ' FROM xxxx ';
query.sql.text := sSQL;
query.open;
Result := query.Fields[0].asInteger;
------
月夜 光明 藍更愁
懷舊的人
高階會員


發表:28
回覆:152
積分:141
註冊:2003-01-08

發送簡訊給我
#5 引用回覆 回覆 發表時間:2007-01-26 10:26:47 IP:211.78.xxx.xxx 訂閱
請找有 parse 相關的元件即可
bugmans
高階會員


發表:95
回覆:322
積分:188
註冊:2003-04-12

發送簡訊給我
#6 引用回覆 回覆 發表時間:2007-01-29 20:41:58 IP:125.225.xxx.xxx 未訂閱
vitojeng
一般會員


發表:2
回覆:13
積分:13
註冊:2003-10-06

發送簡訊給我
#7 引用回覆 回覆 發表時間:2007-02-05 13:44:40 IP:61.224.xxx.xxx 訂閱
記得 JVCL 內有元件可以使用, 也有 sample code
除了執行 expression, 好像也可以當 script engine
不過正確的元件名稱我忘了
系統時間:2024-04-24 2:51:53
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!