0

そのため、メインを呼び出すメソッドがあります。このメソッドは、10個の数値の配列を受け取り、ネストされたforループでヒストグラム出力を作成します。行タイトルの横にある正しい数のアスタリスクを取得する方法がわかりません。配列は前のメソッドからメソッドに渡されます。ありがとう!!

public static void outputHistogram(int [] list)
{

    int k =0;
    for(int i=0;i<=9;++i)
    {
        System.out.print((i*10+1) +"-"+(i*10+10)+":"+"\t");

        for(int j=1; j<=i;++j)  
            System.out.print("*");


        System.out.println();   
    }
}
4

5 に答える 5

3

ヒストグラムに「リスト」変数 (実際にはint配列) を使用する場合、二重forループの推奨事項は次のとおりです。

外側のループ (0 からリストの最後までループ)

for (int i = 0; i < list.length; i++)

内側のループ (0 から外側のループの i 番目の要素までループ)

for (int j = 0; j < list[i]; j++)
于 2013-03-14T08:10:48.430 に答える
1

outputHistorgram メソッドのどこにもリストを使用しません。これが生成されるはずだったのか正確にはわかりませんが、次のように for ループを実行すると役立つ場合があります。

for(int i : list)

これが正しくない場合は、入力と出力の例を示してください。

于 2013-03-14T08:08:37.860 に答える
1

2 番目の for ループでのテストは、j < list[i]

于 2013-03-14T08:11:36.887 に答える
0

私はあなたがこれをしたいと思います。

public static void outputHistogram(int [] list)

{

int k =0;
for(int i=0;i<=9;++i)
{
    System.out.print((i*10+1) +"-"+(i*10+10)+":"+"\t");

    for(int j=1; j<=(i*10+10);++j)  
        System.out.print("*");


    System.out.println();   
}

}

于 2013-03-14T08:16:52.890 に答える