我已经搜索了很多关于这个问题的信息,无济于事。我真的很难与Java循环。如何创建一个创建一个带有方形数字的三角形的Java循环?
我得到的大局观念/ While循环,但是当谈到时间真正开始编程,我得到错误后错误...
我试图写出我的程序和理解的逻辑它,但我似乎无法让程序做我想做的事情。
当前的任务:
收件使用,要求用户对一个数n 1和9(含)之间的扫描仪的程序。该程序打印一个三角形的行。第一行只包含1的平方,并且它是右对齐的。第二行包含2的平方,后跟1的平方,并且右对齐。随后的行包括3,2和1的正方形,然后是4,3,2和1,等等,直到打印n行。
假设用户输入4,此程序将输出以下三角形到控制台
1 4 1 9 4 1 16 9 4 1
对于完整的信用卡,每列应宽3个字符且值应右对齐。
到目前为止,我已经接近(不包括对于现在的用户输入,只是想至少也得在循环方面的把握,然后我会在那工作):
public class MyClass {
public static void main(String args[]) {
int rows = 4; // this is the value that the user will enter for # of rows
for (int i = 1; i <= rows; i++) {
for (int j = i; j >= 1; j--) {
System.out.print((j*j)+" ");
}
System.out.println();
}
}
}
打印:
1
4 1
9 4 1
16 9 4 1
是你的三角形反转您的问题/镜像?你是否尝试颠倒你的内部循环,以便你从1开始,递增到'i'而不是从'i'开始递减到1? –
我不认为它是倒置的,只是没有足够的空白将上面的行推入到位。例如,底行是完美的,而不是倒置的。 – MC10
由于这是一个家庭作业问题,我不认为我们应该给你答案。这里是关于创建一个右对齐的三角形的一些信息:https://stackoverflow.com/questions/11542113/java-asterisk-right-triangle – jwils