2013-12-17 105 views
1

在計算獨立路徑的數量時,是否應該將使用& &加入的布爾表達式視爲單獨的語句?例如,第3行有兩個條件,如果第一個表達式爲假,則將評估後續表達式。計算獨立路徑的數量

1 float calc(float sp, Boolean bt, int r) { 
2 float c = .060; 
3 if ((sp > 300000) && bt) 
4  c = .050; 
5 if (r > 3) 
6  c = c * .9; 
7 return (sp * c); 
8 } 

回答

1

不,假設您正在計算執行路徑。

如果你正在計算條件路徑的數量,那麼是的。

通常,當你計算圈複雜度時,你在做後者,所以你應該計算函數中SIMPLE條件的數量。

我的意思簡單的條件是,上述功能等同於:

float calc(float sp, Boolean bt, int r) { 
    float c = .060; 
    if ((sp > 300000)) 
    if (bt) 
    c = .050; 
    if (r > 3) 
    c = c * .9; 
    return (sp * c); 
}