[問題] 多個textbox運算

作者: ji3345 (will)   2014-02-20 17:51:37
小弟剛自學c#
想要處理一些運算類的問題
有 A B 兩個方案想要用決策方法比較選出較好的
而準則1中有 a1 b1 c1 三個數
設定三個textbox a1 = Convert.ToDouble(txb_a1.Text)
b1 = Convert.ToDouble(txb_b1.Text)
c1 = Convert.ToDouble(txb_c1.Text)
分別輸入 a1 b1 c1 三個值
之後用if 和 else if 求出 d1 為我想要的解答
A = Convert.ToDouble(txb_A.Text);
B = Convert.ToDouble(txb_B.Text);
R = B-A;
if (R <= (-b1))
d1 = 1;
else if ((-b1) < R & -a1 > R)
d1 = 0.5 + ((0.5 * (R +b1) / (b1 – a1)));
else if ((-a1) <= R & R <= a1)
d1 = 0.5;
else if (R > a1 & R < b1)
d1 = ((0.5 * (b1 - R)) / (P – a1));
else if (R >= b1)
d1 = 0;
txb_d1.Text = Convert.ToString(d1);
但是當有i條準則要比較時就有 a1 b1 c1
a2 b2 c2
. . .
. . .
. . .
ai bi ci
想要求出i個d值時卻遇到了困難
就是想要從a1 b1 c1 到 ai bi ci 代入上面的方程式求出 i 個 d值
(大致上如推文的m大所敘述)
我猜想應該可以用for迴圈運算
有試過在迴圈內把輸入for (int i = 0; i <= 10 ; i++) ;
之後運算式名稱改成 ai bi ci 跑迴圈 但是失敗
想請問該如何在迴圈中設定textbox呢?
拜託大家了 謝謝
作者: mepowerlmay (用心,找對人)   2014-02-20 20:20:00
d1= ?
作者: GoalBased (Artificail Intelligence)   2014-02-20 21:34:00
你的問題描述太不清楚了
作者: m339606 (mize)   2014-02-20 22:29:00
大概就是類似A+B+C=D的感覺吧?然後ABC有n組 要求出每組的DASP.NET實現方法比較多種,WinForm就 http://ppt.cc/2nSt話說之前好像就有人問過類似的問題XD由於c#是靜態語言,使用映射吧。
作者: dvrizing (小硬)   2014-02-20 23:45:00
把textbox控制項給陣列化後再處理
作者: Litfal (Litfal)   2014-02-21 13:19:00
也不一定要用反射啦,遞迴跑一次Controls,把Name符合規則(字串判斷或用Regex之類)的控制項塞到陣列裡(*1)。或是在程式把那些Textbox初始化時,就把它們塞到陣列裡(*1)不定數量的Textbox應該是用程式碼產生的,總不會用手拉吧?(*1)也不一定要塞到陣列裡,用ViewModel把它們之間的運算關係綁定也是個不錯的選擇。
作者: ji3345 (will)   2014-02-21 22:57:00
謝謝各位的幫忙建議 小弟因為新手需要點時間來完成 謝謝
作者: proach ( )   2014-02-22 01:31:00
textbox1.Text=a1.ToString(); 你不會是說這個吧?:)如果是textbox很多很多個,那你可以用程式碼產生textboxkey words:generate XXXXX programmatically這樣可以幾行code產生數百個 TextBox [], 隨意使用:)

Links booklink

Contact Us: admin [ a t ] ucptt.com