gpt4 book ai didi

java - 控制台条形图使用循环,不带图形JAVA

转载 作者:行者123 更新时间:2023-12-01 11:13:16 26 4
gpt4 key购买 nike

目前正在研究书籍循环章节中的示例。基本上,有 4 个汽车销售商,每个销售商都应该输入他们销售了多少辆汽车。在输入下方,应打印出他们的姓名,并与他们销售的汽车编号(来自输入)在同一行中,但不以数字形式打印,使用 X 或星号 *。 x 或星号代表输入的数字。到目前为止,这是我的代码。我一直坚持在名字旁边打印 X 或星号。它打印在错误的名字旁边。有没有办法只使用循环而不使用数组?

 import java.io.*;
public class BarGraphCarSold {

public static void main(String[] args)throws IOException {
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));

System.out.print("Enter no of cars Bob sold >> ");
int bobSold = Integer.parseInt(buf.readLine());
System.out.print("Enter no of cars Pam sold >> ");
int pamSold = Integer.parseInt(buf.readLine());
System.out.print("Enter no of cars John sold >> ");
int johnSold = Integer.parseInt(buf.readLine());
System.out.print("Enter no of cars Kim sold >> ");
int kimSold = Integer.parseInt(buf.readLine());
System.out.println();
System.out.println("Car Sales for Month");


System.out.print("Bob \n");
System.out.print("Pam \n");
System.out.print("John \n");
System.out.print("Kim ");

for(int i = 1; i<=bobSold;i++){
System.out.print("X");
}
}
}

OUTPUT
Enter no of cars Bob sold >> 5
Enter no of cars Pam sold >> 7
Enter no of cars John sold >> 4
Enter no of cars Kim sold >> 6

Car Sales for Month
Bob
Pam
John
Kim XXXXX

最佳答案

你已经很接近了。

尝试这样的事情。

System.out.print("Bob ");
for(int i = 0; i < bobSold; i++){
System.out.print("X");
}
System.out.print("\n");

您正在打印每个名称,然后有换行符 (\n),然后尝试打印 X。因此,您需要打印他们的名字,然后打印 X,然后打印新行。对于每个要打印的带有 X 的名称,您将需要一个类似的循环。

有很多不同的方法可以做到这一点。您可以使用一个 String 及其名称,然后循环遍历并将 X 添加到 string 中,然后一次将其全部打印出来。

String dealer = "Bob ";
for(int i = 0; i < bobSold; i++){
dealer += "X";
}
dealer += "\n";
System.out.print(dealer);

使用数组

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Main {
public static void main(String[] args) {
BufferedReader buf = new BufferedReader(new InputStreamReader(System.in));
String[] dealers = {"Bob","Pam","John","Kim"};
int[] sales = new int[4];

try {
for(int i=0; i < dealers.length; i++){
System.out.print("Enter number of cars "+dealers[i]+" sold: ");
sales[i] = Integer.parseInt(buf.readLine());
}
}catch(IOException e){
System.err.println("Error Reading input");
System.err.println(e.getMessage());
}
System.out.println();
System.out.println("Car Sales for Month");

for(int i = 0; i < dealers.length; i++) {
System.out.print(dealers[i]+" ");
for(int j = 0; j < sales[i]; j++) {
if(j == (sales[i]-1)) {
System.out.println("X");
}else {
System.out.print("X");
}
}
}
}
}

玩得开心。代码打开。

关于java - 控制台条形图使用循环,不带图形JAVA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32127768/

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