作者justaID (快樂崇拜)
看板Flash
標題[問題] 使用字串型態的運算子
時間Sun Sep 19 18:03:01 2010
這好像是頗基本的程式問題(汗)
但google找不到ActionScript的例子
我想寫一個類似計算機的flash
裡面有3個TextField,分別讓使用者輸入2個數字和1個運算子
例如 s1="3", s2="+", s3="2"
s1和s3可以用Number()轉成運算元n1=3, n2=2
但s2卻不知該怎麼轉成可直接運算的運算子
目前是採取if去判斷:
if(s2=="+"){ ans=n1+n2; }
else if(s2=="-"){ ans=n1-n2; }
else if(s2=="*"){ ans=n1*n2; }
else if(s2=="/"){ ans=n1/n2; }
else if(s2=="%"){ ans=n1%n2; }
總覺得應該有更聰明的寫法~"~
請教各位前輩,感謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.134.88.67
※ 編輯: justaID 來自: 220.134.88.67 (09/19 18:08)
推 kudoropu:eval() 09/19 22:12
推 cjcat2266:不,這個問題不基本,這牽扯到了expression evaluation 09/20 00:14
→ cjcat2266:建議去查查怎麼把infix轉換成postfix,然後作運算 09/20 00:14
→ cjcat2266:更進階一點的expression,就需要去研究compiler了 09/20 00:14
→ cjcat2266:沒試過一樓的eval(),簡單的算式或許可以用這招來偷吃步 09/20 00:15