输入示例:
3
4
输出示例(假设空格 = 新行。)
QQQH
QQHH
QHHH
QQQQH
QQQHH
QQHHH
QHHHH
到目前为止,尝试打印的代码片段是(假设所有变量都是预定义的):
public int getSize()
{
for (int i = size; i > 0; i--){
for (int j = 1; j < size; j++){
out.print("Q");
out.print("H");
}
out.println("");
}
return 0;
}
它只是打印:(假设空格 = 新行。)
QHQHQHQHQH
QHQHQHQHQH
QHQHQHQHQH
QHQHQHQHQH
QHQHQHQHQH
对于 5 的输入。我不太确定如何让它只打印其各自整数值的次数。谁能解释一下?
最佳答案
你可以将内部循环分成两部分,像这样:
for (int i = size; i > 0; i--) {
for (int j = 0; j < i; j++) {
out.print("Q");
}
for (int j = i; j < size + 1; j++) {
out.print("H");
}
out.println();
}
输出:
QQQH
QQHH
QHHH
QQQQH
QQQHH
QQHHH
QHHHH
或者如果你不想打破循环,你可以使用三元运算符:
for (int i = size; i > 0; i--) {
for (int j = 0; j < size + 1; j++) {
out.print(j < i ? 'Q' : 'H');
}
out.println();
}
关于java - 在使用 For 循环将两个不同字符的三角形放入一个矩形时遇到问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15194872/