我在这里学到了很多东西,但我有一个问题,我无法找到。
我们的最后一项任务要求我们在Java中使用嵌套的For Loops来显示菱形。
本程序必须使用用户输入的符号并绘制以下内容:
%
% %
% % %
% % % %
% % % % %
% % % %
% % %
% %
%
到目前为止,我伪编码了一半的三角形,然后我将编码三角形的倒数来完成相反的一面,但除了增加所需的符号数量之外我不能得到任何其他的东西:
*
**
***
****
*****
这是代码:
String symbol1; //User input, symbol to utilize
Scanner Keyboard = new Scanner (System.in);
System.out.println("Enter the Symbol you wish to use: ");
symbol1 = Keyboard.next();
for (int i=0 ; i<5 ; i++)
{
for (int k=5 ; k > i; k--)
{
System.out.print(" ");
}
for (int j=0; j<=i; j++)
{
System.out.print(symbol1);
}
System.out.println();
}
}
}
非常感谢任何输入!
的 的 * 修改的 *
我想发布我的结束代码。 这可能很简单,但我觉得很有成就感。 希望它会帮助某些人,就像我在这里得到帮助一样!
为每个人欢呼。
import java.util.Scanner;
公共课AlvaradoPgm04Bonus {
public static void main(String[] args) {
//使用用户输入的符号
绘制钻石String symbol1; //User input, symbol to utilize
Scanner Keyboard = new Scanner (System.in); //New scanner
System.out.println("Enter the Symbol you wish to use: "); //Prompt user symbol input
symbol1 = Keyboard.next(); // Capture user input
for (int i=0 ; i<5 ; i++){ //Begin for loop - increase until int is 5 long
for (int k=8 ; k > i ; k--){ //nested loop - decrease space before int "i" (inverted invisible triangle)
System.out.print(" "); //print space from nested loop before symbol1
}
for (int j=0; j<=i; j++){ //nested loop - increase "j" until is equal to "i"
System.out.print(symbol1 + " "); //print symbol1 + space to form diamond
}
System.out.println(); //print above nested loop line by line
} //begin new loop - inverted triangle
for (int m = 4 ; m > 0 ; m--){ //decrease symbol by 1
for (int n = 8 ; n >= m ; n--){ //match increase of space "invisible" triangle next to symbol to form upside down triangle
System.out.print(" "); //print "invisible" triangle
}
for (int q = 0 ; q < m ; q++){ //nested loop to decrease symbol entered by user
System.out.print(symbol1 + " "); //print inverted triangle made of user's input
}
System.out.println(); //print the loop in new line.
} //end loop
}//end main
} //结束课
答案 0 :(得分:0)
您可能需要注意,在预期的输出中,每个符号后面都有空格,因为您知道如何打印空格,我会假设您知道打印符号的位置,您应该很容易添加在符号后打印空格。 然后你得到了一半的钻石,下半部分是完全相同的在对立面直接如果你得到我的hInt。
答案 1 :(得分:0)
打包moreloops;
import java.util.Scanner;
公共类钻石{
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
int input=in.nextInt();
int spac=input-1;
int min=1;
int max=input;
for(int i=0;i<input;i++){
for(int k=spac ; k>i;k--){
System.out.print(" ");
}
for(int j=0;j<min;j++){
System.out.print("*");
}
min+=2;
System.out.println();
}
for(int m=input-1;m>0;m--){
for(int n=spac;n>=m;n--){
System.out.print(" ");
}
for(int q=0;q<m;q++){
System.out.print("*");
}
System.out.println();
}
}
}
我的输出大声笑 五 *
** *
答案 2 :(得分:0)
package moreloops;
import java.util.Scanner;
public class Diamond {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
int input=in.nextInt();
int spac=input-1;
int min=1;
int max=input;
for(int i=0;i<input;i++){
for(int k=spac ; k>i;k--){
System.out.print(" ");
}
for(int j=0;j<min;j++){
System.out.print("*");
}
min+=2;
System.out.println();
}
for(int m=input-1;m>0;m--){
for(int n=spac;n>=m;n--){
System.out.print(" ");
}
for(int q=0;q<m;q++){
System.out.print("*");
}
for(int s=0;s<m-1;s++){
System.out.print("*");
}
System.out.println();
}
}
}
这将有所帮助