看板 C_Sharp 關於我們 聯絡資訊
小弟剛自學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呢? 拜託大家了 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 60.245.65.180
mepowerlmay:d1= ? 02/20 20:20
GoalBased:你的問題描述太不清楚了 02/20 21:34
m339606:大概就是類似A+B+C=D的感覺吧?然後ABC有n組 要求出每組的D 02/20 22:29
m339606:ASP.NET實現方法比較多種,WinForm就 http://ppt.cc/2nSt 02/20 22:31
m339606:話說之前好像就有人問過類似的問題XD 02/20 22:32
m大說出我的問題了 不好意思表達不好 我重新編輯一下 ※ 編輯: ji3345 來自: 114.42.224.34 (02/20 23:00) ※ 編輯: ji3345 來自: 114.42.224.34 (02/20 23:41)
m339606:由於c#是靜態語言,使用映射吧。 02/20 23:37
dvrizing:把textbox控制項給陣列化後再處理 02/20 23:45
Litfal:也不一定要用反射啦,遞迴跑一次Controls,把Name符合規則 02/21 13:19
Litfal:(字串判斷或用Regex之類)的控制項塞到陣列裡(*1)。 02/21 13:22
Litfal:或是在程式把那些Textbox初始化時,就把它們塞到陣列裡(*1) 02/21 13:24
Litfal:不定數量的Textbox應該是用程式碼產生的,總不會用手拉吧? 02/21 13:25
Litfal:(*1)也不一定要塞到陣列裡,用ViewModel把它們之間的運算 02/21 13:26
Litfal:關係綁定也是個不錯的選擇。 02/21 13:27
ji3345:謝謝各位的幫忙建議 小弟因為新手需要點時間來完成 謝謝 02/21 22:57
proach:textbox1.Text=a1.ToString(); 你不會是說這個吧?:) 02/22 01:31
proach:如果是textbox很多很多個,那你可以用程式碼產生textbox 02/22 01:32
proach:key words:generate XXXXX programmatically 02/22 01:33
proach:這樣可以幾行code產生數百個 TextBox [], 隨意使用:) 02/22 01:34