你好!我正在学校的 AP 计算机科学中尝试学习如何使用嵌套 for 循环,但我在这个实验中遇到了麻烦:/我在获得正确结果方面取得了一些进展。然而,我在路上遇到了问题。上图显示了我需要做什么。
示例数据:
<小时/>C 4
A 5
Sample Output:
CCCC DDD EE F
CCCC DDD EE
CCCC DDD
CCCC
AAAAA BBBB CCC DD E
AAAAA BBBB CCC DD
AAAAA BBBB CCC
AAAAA BBBB
AAAAA
上面还有我需要的 I/O。
到目前为止我编写的代码如下:
import java.util.Scanner;
public class LettersAndNumbers {
public static void main(String args []) {
int times;
String character;//I know this sounds stupid
Scanner scan = new Scanner(System.in);
System.out.print("Enter a character and integer");
character = scan.nextLine();
times = scan.nextInt();
String output ="";
for(int i=times; i>=0;i--) {
for(int j=i;j>=1;j--){
for(int x = j; x>=1; x--)
{
output=output + character;
}
output=output+" ";
}
output=output +'\n';
int charValue = character.charAt(0);
character = String.valueOf( (char) (charValue + 1));
}
System.out.println(output);
}
}
它产生以下输出(我正在接近):
输入字符和整数C
4
CCCC CCC CC C
DDD DD D
EE E
F
非常感谢您提供的任何帮助!
最佳答案
对于扫描仪,我将使用 useDelimiter("\s") (意味着按空格分割)和 next() 来获取字符串的字符和 int 。我会把这个留给你自己解决。 对于它的循环部分。假设你有一个起始角色和时间。您可以打印
for(int i = times; i > 0; i--){
for(int j = 0; j < i; j++){
int numRepeats = i - j;
String output = "";
String repeatedCharacter = String.valueOf(startingCharacter + j);
for(int k = 0; k < numRepeats; k++){
output += repeatedCharacter;
}
System.out.print(output + " ");
}
System.out.println("");
}
关于java - 如何在 Java 中格式化这些嵌套循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35006205/