Java 如何使用嵌套for循环?
这是我的密码Java 如何使用嵌套for循环?,java,Java,这是我的密码 public static void main (String[] args) { Scanner keyboard = new Scanner (System.in); int tri, a; int b; System.out.println("Enter the size you want your triangle to be:"); tri = keyboard.nextInt(); for (a =
public static void main (String[] args)
{
Scanner keyboard = new Scanner (System.in);
int tri, a;
int b;
System.out.println("Enter the size you want your triangle to be:");
tri = keyboard.nextInt();
for (a = 1; a <= tri; a++)
{
for (b = 1; b <= a; b++)
{
System.out.print("*");
}
}
}
publicstaticvoidmain(字符串[]args)
{
扫描仪键盘=新扫描仪(System.in);
int-tri,a;
int b;
System.out.println(“输入三角形的大小:”);
tri=键盘.nextInt();
对于(a=1;a而言,每次访问外部环路时都需要执行此操作:
system.out.println();
这允许*位于不同的行上,并且此代码仅处理三角形的上半部分。为了处理下半部分,必须从tri开始倒计时。每次访问外部循环时都需要这样做:
system.out.println();
这允许*位于不同的行上,而且此代码只处理三角形的上半部分。为了处理下半部分,您必须从tri开始倒数。您需要对代码进行两个更改。首先,您需要在外循环的每次迭代中结束该行。其次,您需要处理三角形的下半部分。下面是实现这两种功能的代码:
public static void main (String[] args)
{
Scanner keyboard = new Scanner (System.in);
int tri, a;
int b;
System.out.println("Enter the size you want your triangle to be:");
tri = keyboard.nextInt();
for (a = 1; a <= tri; a++)
{
for (b = 1; b <= a; b++)
{
System.out.print("*");
}
// this next call ends the current line
System.out.println();
}
// now for the bottom of the triangle:
for (a = tri - 1; a >= 1; a--) {
for (b = 1; b <= a; b++)
{
System.out.print("*");
}
System.out.println();
}
}
publicstaticvoidmain(字符串[]args)
{
扫描仪键盘=新扫描仪(System.in);
int-tri,a;
int b;
System.out.println(“输入三角形的大小:”);
tri=键盘.nextInt();
对于(a=1;a,您需要对代码进行两次更改。首先,您需要在外部循环的每次迭代中结束该行。其次,您需要完成三角形的底部部分。下面是同时完成这两项操作的代码:
public static void main (String[] args)
{
Scanner keyboard = new Scanner (System.in);
int tri, a;
int b;
System.out.println("Enter the size you want your triangle to be:");
tri = keyboard.nextInt();
for (a = 1; a <= tri; a++)
{
for (b = 1; b <= a; b++)
{
System.out.print("*");
}
// this next call ends the current line
System.out.println();
}
// now for the bottom of the triangle:
for (a = tri - 1; a >= 1; a--) {
for (b = 1; b <= a; b++)
{
System.out.print("*");
}
System.out.println();
}
}
publicstaticvoidmain(字符串[]args)
{
扫描仪键盘=新扫描仪(System.in);
int-tri,a;
int b;
System.out.println(“输入三角形的大小:”);
tri=键盘.nextInt();
对于(a=1;aSystem.out.print
打印当前输出缓冲区(即控制台)中的所有内容。必须使用System.out.println
(注意ln
后缀)打印内容和换行符。System.out.print
打印当前输出缓冲区(即控制台)中的所有内容。必须使用System.out.println
(注意ln
后缀)打印内容和换行符。或仅一个循环:
int x = 3; // input tri
var y = x*2;
for (int i = 0; i < y; ++i) {
for (int j = 0; j < (i < x ? i : y-i); ++j) {
System.out.print("*");
}
System.out.println();
}
int x=3;//输入tri
变量y=x*2;
对于(int i=0;i
或仅一个循环:
int x = 3; // input tri
var y = x*2;
for (int i = 0; i < y; ++i) {
for (int j = 0; j < (i < x ? i : y-i); ++j) {
System.out.print("*");
}
System.out.println();
}
int x=3;//输入tri
变量y=x*2;
对于(int i=0;i
这是以前提出的问题。这可以通过递归方法完成。您需要使用System.out.println()告诉计算机何时应该转到下一行;
在您的代码中的某个地方。@huseyintugrulbuyukisik当然可以。但是,问题是如何使用嵌套for循环。@huseyintugrulbuyukisik我在这个问题中找不到任何与递归相关的内容,看起来非常具体:使用嵌套循环。这是以前提出的问题。这可以通过递归方法完成。您需要告诉计算机r使用System.out.println()转到下一行的时间
在代码中的某个地方。@huseyintugrulbuyukisik当然可以。但是,问题是如何使用嵌套for循环。@huseyintugrulbuyukisik我在这个问题中找不到任何与递归相关的内容,看起来非常具体:使用嵌套循环。这为OP的问题提供了完整的解决方案,因此确实是一个解决方案。我认为这是一个练习,OP在使用System.out.print
和System.out.println
时遇到问题,然后离开OP继续处理这个新的t̶o̶y̶方法。谢谢,但这到底是做什么的System.out.println();我的意思是,程序如何知道将1*放在第一行,2*放在第二行,依此类推。我只是很难理解它背后的思想过程。@xpression-它开始了一行新的内容。(将其视为打印一行空行,除非先前调用System.out.print()
)时可能已经有内容在这行了)System.out.println()
(又称sopl)与System.out.print()
非常相似,但它在输出的末尾添加了一行新行。它与键入System.out.print(myString+'\n'非常相似
循环的最后一个,为什么是b=1和b++。它不应该是b——这给出了OP问题的完整解决方案,所以确实是一个解决方案。我认为这是一个练习,OP在使用System.out.print
和System.out.println
时遇到了问题,然后离开OP继续处理这个新的t̶o̶y̶方法。谢谢我的意思是程序如何知道将1*放在第一行,2*放在第二行,依此类推。我只是很难理解它背后的思想过程。@xpression-它开始了一个新的行。(可以将其视为打印一个空行,除了先前调用System.out.print()
)的行中可能已经有内容之外)System.out.println()
(也称为sopl)与System.out.print()
非常相似,但它在输出的末尾添加了一行新行。它与键入System.out.print()非常相似(myString+'\n');
最后一个for循环,为什么是b=1和b++。它不应该是b吗--