看板 C_Sharp 關於我們 聯絡資訊
最近在練習一些邏輯基本題 但是沒有正確答案 想請問一下,下面如何縮減行數 int count = 0; for (int i = 0; i < 10; i++) { if (a <= 5 && b <= 5 && a > i) count += i; else if (a <= 5 && b > 5 && a > i) count += i; else if (a > 5 && b <= 5 && a > i) count += i; else if (a > 5 && b > 5 && a > i) count += i; } 我想的到的方法是用三元運算子來簡化,但感覺很不實用,不知道還有其他方法嗎? count += a <= 5 && b <= 5 && a > i ? i : (a <= 5 && b > 5 && a > i ? i : (a > 5 && b <= 5 && a > i ? 3 : (a > 5 && b > 5 && a > i ? i : 0))); -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 58.114.193.20 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1478774710.A.8E3.html
shuangrain: 可讀性降低很多,建議還是以可閱讀為主 11/10 19:24
ssccg: 你原程式跟簡化的不一樣? a > 5 && b <= 5 && a > i這條 11/10 19:44
ssccg: 只以這個例子來說,四個條件加起來不就是所有情況了? 11/10 19:45
ssccg: 只剩 a > i 11/10 19:45
ssccg: for(int i = 0; i < 10 && i < a; i++) { count += i; } 11/10 19:52
jizang: 推,人看得懂最重要~ 11/10 23:25
mepowerlmay: 設計模式 鏈結者模式 11/14 01:29
YahooTaiwan: 若你只是想 "省行數",那完全沒必要 11/14 02:56
largesperm: 不要說別人看不看得懂好了 你縮很短 11/15 14:32
largesperm: 下星期連你都看不懂了 11/15 14:32
jasonkey123: 重點是省了行數,跑起來也沒比較快... 12/03 10:12