質問: 配列内で値が発生する回数を数える最善の方法は何ですか? 私は、テキストファイルから多くの割り当てマークを配列に読み込んで、特定の角括弧内にいくつのマークがあるか、つまり40-49,50-59などを数えることを指定しています。テキストファイルの-1は、代入が渡されなかったことを意味し、値0は、代入が非常に悪くなったことを意味します。 いくつかの `for` ループを使用してこれを簡単に行うことができますし、 `if` ステートメントを使って値をチェックしながら適切な整数をインクリメントして発生数を数えます私はプログラムを「より良い」方法で実装する必要があります。これを行うためのより良い、より効率的な方法は何でしょうか?私は今すぐコードを探しているわけではなく、ただ単にこれはあなたがすべきことです。私はそれを行うためのさまざまな方法を考えようとしましたが、どれも優れているようには見えず、あたかもそれを複雑にしようとしているかのように感じます。 私は値が関数のパラメータとして格納されている2D配列を使用してみましたが、関数を使用して特定の値の数を出力しましたが、構文が間違っているためコンパイルできませんでしたパラメータとして2D配列を使用するために、私はこれを行う方法についてあまりよく分かりません。 どんな助けでも感謝します、ありがとう。
回答: なぜループのためのカップルが必要ですか? 1つで十分です。 配列[0]が0〜9のマーク、配列[1]が10〜19のマークなどのサイズ10の配列を作成します。数字が表示されたら、整数除算を使用して適切な配列バケットに入れます。 array [(int)mark/10] ++。終了すると、配列には各バケットのマーク数が格納されます。