以下のように配列matrix(5)が存在し、matrix(0)からmatrix(5)までなんらかの値が入っているときに、それらに順位をつけるプログラミングをしています。
ループの前後は省略させていただきます。
'選んだ要素がほかの要素に抜かされる回数をカウントする
For i As Integer = 0 To 5
rank(i) = 1
For k As Integer = 0 To 5
If matrix(i) < matrix(k) Then
rank(i) = rank(i) + 1
End If
Next
Next
これでrank(i)には順位が1から6まで入るのですが、これだと
・同じ要素番号を比較してしまっている
・matrix(0)に対しmatrix(0)からmatrix(5)までを比較したら次のループからはFor i As Integer = 1 To 5、・・・、でいい
ということからこれらを修正し、コードは長くなってもループの周回数は少なくなるようにしたいです。
色々試したのですがたぶんIf文の位置が間違っていたりでうまくいきません。コードじゃなくて日本語でもいいのでどの位置にどういうことを書けば周回数を減らせるか教えてください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。