gpt4 book ai didi

java - 输出未按预期打印

转载 作者:行者123 更新时间:2023-12-02 07:26:28 25 4
gpt4 key购买 nike

我已经完成了此任务的代码,只是无法找出导致输出不正确的原因。使用 3 和 A 作为值时所需的输出应返回:

A

AA

AAA

目前,我得到:

AAA

AAA

AAA

代码:

import static java.lang.System.*;

public class TriangleThree
{
private int size;
private String letter;

public TriangleThree()
{
}

public TriangleThree(int count, String let)
{
size = count;
letter = let;
}

public void setTriangle( String let, int sz )
{
size = sz;
letter = let;
}

public String getLetter()
{
return letter;
}

public String toString()
{
String output="";
for(int i = 1; i<=size; i++)
{
for(int j = 0; j > i;j++ )
{
output = output + " ";
}

for(int k = size; k>0; k--)
{
output = output + letter;
}
output= output + "\n";
}





return output+"\n";
}
}

并与我的运行者类交叉引用它:

import static java.lang.System.*;

import java.util.Scanner;

public class Lab11c
{
public static void main( String args[] )
{
Scanner keyboard = new Scanner(System.in);
String choice="";
do{
out.print("Enter the size of the triangle : ");
int big = keyboard.nextInt();
out.print("Enter a letter : ");
String value = keyboard.next();

//instantiate a TriangleThree object
TriangleThree tt = new TriangleThree( big, value );
//call the toString method to print the triangle
System.out.println( tt );

System.out.print("Do you want to enter more data? ");
choice=keyboard.next();
}while(choice.equals("Y")||choice.equals("y"));
}
}

最佳答案

您正在运行第二个 for 循环 3 次(全部从 size0 )。将其更改为:-

    for(int k = i; k>0; k--)
{
output = output + letter;
}

这将运行1 time对于 i = 1 , 2 times对于 i = 2 ,...

此外,您的第一个循环存在问题:-

for(int j = 0; j > i;j++ )

这实际上应该是:-

for(int j = 0; j < i;j++ )
<小时/>

更新:-

实际上你不需要第一个循环,因为它只是打印空格。而是在您的 output 中添加空格仅在第二个循环中:-

    for(int k = i; k>0; k--)
{
output = output + letter + " ";
}

关于java - 输出未按预期打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13520263/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com