我试图制作一个如下所示的直方图:
1 - 5: ****
6 - 10: ******
11 - 15: **
16 - 20: **********
21 - 25: ***********
26 - 31: ********
31 - 35: ****
36 - 41: *******
41 - 45: ************
46 - 50: *****************
到目前为止,这是我的代码:
public static void graph (int[] arr) {
for ( int i=0; i <= 50; i+=5) {
System.out.println(i+" - " + ( i + 4 ) + " :" );
for ( int num : arr) {
if ( num >= i && num <= i + 4)
System.out.print("*");
}
}
}
这是我的输出:
0 - 4 :
**5 - 9 :
10 - 14 :
*15 - 19 :
20 - 24 :
*25 - 29 :
30 - 34 :
*35 - 39 :
40 - 44 :
45 - 49 :
50 - 54 :
需要一些帮助修复我的代码。我现在已经试图解决这个问题很长一段时间了。此外,如果有人愿意帮助请使用不那么高级的Java代码。我想了解我编码的内容,所以我更喜欢你,只是修改我的代码而不是编写任何新的代码。提前谢谢。
答案 0 :(得分:0)
试试这个:
public static void graph (int[] arr) {
for ( int i=0; i <= 50; i+=5){
System.out.print(i+" - " + ( i + 4 ) + " :" );
for ( int num : arr) {
if ( num >= i && num <= i + 4)
System.out.print("*");
}
System.out.println();
}
}
输出:(以int[] array = {1, 3, 3, 6, 8, 9, 15, 20, 50};
作为数组)
0 - 4 :***
5 - 9 :***
10 - 14 :
15 - 19 :*
20 - 24 :*
25 - 29 :
30 - 34 :
35 - 39 :
40 - 44 :
45 - 49 :
50 - 54 :*