2 回答

TA貢獻1934條經驗 獲得超2個贊
這是一個工作腳本:
Scanner sc = new Scanner (System.in);
String[] lines = {" *", " **", " ***", " ****", " *****"};
int input = Integer.parseInt(sc.nextLine());
for (int i=0; i < lines.length; ++i) {
for (int j=0; j < input; ++j) {
System.out.print(lines[i]);
System.out.print(" ");
}
System.out.println();
}
我們可以在這里使用嵌套循環,其中外循環迭代三角形的線,內循環控制每行打印多少個三角形。對于輸入 3,生成:
* * *
** ** **
*** *** ***
**** **** ****
***** ***** *****

TA貢獻1842條經驗 獲得超21個贊
您現在已經非常接近可行的解決方案,而不是制作嵌入新行的解決方案barricade;String使其成為一個數組。我也更喜歡sc.nextInt()將三個調用硬編碼到一個數組Integer.parseInt(),并且我將進一步創建num1一個num3數組。喜歡,
int[] nums = { 2, 1, 3 }; // { sc.nextInt(), sc.nextInt(), sc.nextInt() };
String[] barricade = {
" *",
" **",
" ***",
" ****",
" *****" };
for (int num : nums) {
for (String line : barricade) {
for (int j = 0; j < num; j++) {
System.out.print(line);
}
System.out.println();
}
System.out.println();
}
添加回答
舉報