- 日時: 2011/04/05 13:07
- 名前: 花ちゃん
- ***********************************************************************************
* カテゴリー:[基本コード][][] * * キーワード:プロシージャ,複数の引数,配列処理,コードの簡略化,, * ***********************************************************************************
---------------------------------------------------------------- Re^2: pMin(i,j,k) - ダンボ 2004/09/07-16:39 No.333 ----------------------------------------------------------------
kazuやん さん、どうもありがとうございます。美しいです。 ソートでないのだから「必要最小限の比較にしろ」というところでしょうか。
。。すみません。。前提が間違えていました。 (誤) pMin :引数の中で最小の値を返す。但し3つとも0なら0を返す (正) pMin :引数の中で最小の正値を返す。但し3つとも0なら0を返す
kazuやん さんのコーディングを流用してこんなにしてみましたが、pMin(6,0,32)=0 となってしまいましたわ(理由は分かる)。もう少し自分で考えて見ますね。
Function pMin(i As Integer, j As Integer, k As Integer) As Integer Dim min As Integer '最小値 '全て0の場合 If (i Or j Or k) = 0 Then pMin = 0 Else '最小値初期設定 If i > 0 Then min = i If (min > j) Then min = j If (min > k) Then min = k pMin = min End If If j > 0 Then min = j If (min > i) Then min = i If (min > k) Then min = k pMin = min End If If k > 0 Then min = k If (min > j) Then min = j If (min > i) Then min = i pMin = min End If
End Function
|