Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java金字塔_Java - Fatal编程技术网

java金字塔

java金字塔,java,Java,我需要帮助。 我尝试制作一个金字塔,它使用两个字母,如下所示: O OO OXO OXXO OXXXO OXXXXO OOOOOOO O OO OXO OXXO OXXXO OXXXXO OOOOOOO 嗯,因为我对java还是新手 我被困在这里了 O OX OXX OXXX OXXXX OXXXXX OXXXXXX 这是我的密码: import java.util.Scanner; class Xx { public static void main(String[] args) {

我需要帮助。 我尝试制作一个金字塔,它使用两个字母,如下所示:

O
OO
OXO
OXXO
OXXXO
OXXXXO
OOOOOOO
O
OO
OXO
OXXO
OXXXO
OXXXXO
OOOOOOO
嗯,因为我对java还是新手 我被困在这里了

O
OX
OXX
OXXX
OXXXX
OXXXXX
OXXXXXX
这是我的密码:

import java.util.Scanner;
class Xx {
  public static void main(String[] args) {
    int x;
    Scanner Sc = new Scanner(System.in);
    System.out.print("Line of Pyramid :  ");
    x = Sc.nextInt();
    for (int y = 0; y <= x; y++) {
      System.out.print("O");
      for (int z = 1; z <= y; z++) {
        System.out.print("X");
      }
      System.out.println();
    }
  }
}
import java.util.Scanner;
Xx类{
公共静态void main(字符串[]args){
int x;
扫描仪Sc=新的扫描仪(System.in);
系统输出打印(“金字塔线”);
x=Sc.nextInt();
对于(int y=0;y
import java.util.Scanner;
Xx类{
公共静态void main(字符串[]args){
int x;
扫描仪Sc=新的扫描仪(System.in);
系统输出打印(“X:”);
x=Sc.nextInt();

对于(int y=0;y我将从一个方法开始,重复给定的字符
n
次,类似于

static String repeat(char ch, int n) {
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < n; i++) {
        sb.append(ch);
    }
    return sb.toString();
}
int x = Sc.nextInt();
System.out.println("O");
System.out.println("OO");
for (int y = 1; y <= x; y++) {
    System.out.print("O");
    char ch = 'X';
    if (y == x) {
        ch = 'O';
    }
    System.out.print(repeat(ch, y));
    System.out.println("O");
}

这里的示例输出的
x
是什么?只需检查z==y或y==x,然后打印Os而不是Xs,如果其中一个是真的
OO
这是缺失的。金字塔的第二行。@YoungHobbit谢谢!编辑。感谢你们的帮助,你们都很棒。与其只发布完整的工作解决方案,不如添加一些解释,比如OP去了哪里错误以及您为更正错误所做的操作。具有该内容的答案比仅使用代码的解决方案更有价值。如果您这样做,我将很高兴删除我的反对票。第二列应该是OO
O
OO
OXO
OXXO
OXXXO
OXXXXO
OOOOOOO
int x;
Scanner Sc = new Scanner(System.in);
System.out.print("X :  ");

x = Sc.nextInt();
for (int y = 0; y <= x; y++) 
{
    System.out.print("O");

    for (int z = 1; z <= y; z++) 
    {
        System.out.print("X");
        if(z == y)
            System.out.print("O");
    }
   System.out.println();
}
for(int i=0; i<= x+2; i++)
{
    System.out.print("O");
}
X :  5
O
OXO
OXXO
OXXXO
OXXXXO
OXXXXXO
OOOOOOOO