【发布时间】:2015-10-09 04:23:16
【问题描述】:
直方图:
我的代码有问题..
预期输出必须是这样的:
输出:
0 8 ********
1 6 ******
2 3 ***
3 7 *******
但我的显示:
0 8 *******************************
1 6 *******************************
2 3 *******************************
3 7 *******************************
我已经搜索并将它与我的代码进行比较,但没有什么能真正帮助我..
能否请您看一下我的代码并提出一些建议,并在
如何正确编码预期的输出..
感谢任何帮助...
public static void main(String args[]) {
{
StringBuilder stringBuilder = new StringBuilder();
int n = 0;
n = Integer.parseInt(JOptionPane.showInputDialog("Enter value"));
int[] arr = new int[n];
String stars = "";
int input = 0;
for(int c = 0; c<n; c++ ){
input = Integer.parseInt(JOptionPane.showInputDialog("Enter number"));
arr[c]=input;
for(int i=0; i<input; i++){
stringBuilder.append("*");
}
}
for(int i=0; i<input; i++){
stringBuilder.append("*");
}
for (int o = 0; o<n ; o++){
stars = stringBuilder.toString();
System.out.println( o +" "+arr[o]+" "+stars);
}
}
}
}
【问题讨论】:
-
“您能否看一下我的代码并提出一些建议,然后再接再厉” - 考虑提供一个 runnable example 来证明您的问题。这不是代码转储,而是您正在做的事情的一个例子,它突出了您遇到的问题。这将减少混乱并获得更好的响应
-
向我们展示您的代码。答案很可能对每个人都是显而易见的,当然对@MadProgrammer 来说也是如此。
-
请忽略第二条和第三条评论,听从@MadProgrammer 的建议。 IE。不要发布不可编译的代码 sn-p,而是 minimal reproducible example。投票结束(因为缺少 MCVE)。
-
其他提示: 1) 使用逻辑一致的形式缩进代码行和块。缩进是为了让代码流更容易理解! 2) 源代码中的一个空白行是永远需要的。
{之后或}之前的空行通常也是多余的。 -
没有,( o +" "+arr[o]+" "+stars) 是一个由计数器编号的循环,可能在for循环中为o,只是一个打印行