2012-05-04 14 views
0

2つの配列があり、最初の配列はresource_wastageのすべての値を保持し、2番目の配列はpower_consumedのすべての値を保持します。ファジィロジックを実装するには、リソースの浪費と消費電力の両方をチェックする必要があります。同時に、出力が配列インデックスになります。一方が低く、次のものがない場合は、次の値に移動する必要があります配列内にあります。2つの配列の最小値

例:

for(int i=0, i<n; i++) 
if(res_was[0] is low in all res_was[i=0 to n] && [pow_con[0] is low in all pow_con[i=0 to n]) 
    { 
     print i; 
     break; 
    } 

    else continue with next value in arrays; 

私はこれを実装する方法を助けてください、私は両方の配列内の値を同時にローであるかどうかを確認を意味します。

+0

場合を比較しますか?あなたはそれぞれの配列の中で最小値をとるべきであるか、そうでなければならないという両方の基準値を持っているからですか? – Oliver

+0

基準に一致するものが見つからない場合、何を返すべきですか? – Oliver

+0

投稿をブリーフィングする必要があります... –

答えて

2

このようなものを使用できます。配列にはMin検索のための特別なメソッドがあります。

var resMin = res_was.Min(); 
var powMin = pow_con.Min(); 
for(int i = 0; i < n; i++)  
{ 
     if(res_was[i] == resMin && pow_con[i] == powMin) 
     { 
     Console.writeLine(i); 
     break; 
     }  
} 

もっと複雑なMinメソッドを使用する必要があります。これらのすべてについてMSDNで読むことができます。

0

こちらもお試しください。

MINVALUEとMINVALUEの位置を見つけるには、低意味は何等しいあなたのプロセスを進める...

 int _ires_wasminValue = Enumerable.Range(0, res_was.Length).Min(i => res_was[i]); 
     int _imin_res_was_pos = Array.IndexOf(res_was, _ires_wasminValue); 

     int _ipow_cons_minValue = Enumerable.Range(0, res_was.Length).Min(i => res_was[i]); 
     int _imin_pow_cons_pos = Array.IndexOf(res_was, _ires_wasminValue); 

     if (_imin_pow_cons_pos==_imin_res_was_pos) 
     { 
      Console.writeLine(_imin_pow_cons_pos);     
     } 
関連する問題