0

単語を受け入れて単語を斜めに表示するプログラムを作成しようとしています。これまでのところ、縦に表示することしかできませんでした。

スキャナーは「zip」を受け入れ、次を出力します。

z  
i  
p  

次のようにするにはどうすればよいですか。

z  
  i  
    p

これが私のコードです:

import java.util.Scanner;
public class exercise_4 
{
    public static void main(String [] args)
    {
        Scanner scan = new Scanner(System.in);

        System.out.println("Please enter your words");

        String word = scan.nextLine();

        for (char ch: word.toCharArray())
        {
            System.out.println(ch);
        }
    }
}
4

5 に答える 5

2

次のようなことを試すことができます:-

   String s = "ZIP";
    String spaces = "";

    for (int i = 0; i < s.length(); i++) {
        System.out.println(spaces + s.charAt(i));
        spaces += "  ";
    }
于 2013-08-10T05:44:53.597 に答える
1

できるよ

String spaces = ""; // initialize spaces to blank first
        for (int i = 0; i < word.length(); i++) { // loop till the length of word
            spaces = spaces + "  "; //
           // increment spaces variable 
           // for first iteration, spaces = ""
           // for second iteration, spaces = " "
           // for third iteration, spaces = "  "
           // for fourth iteration, spaces = "   " and so on

            System.out.println(spaces + word.charAt(i));
           // this will just print the spaces and the character of your word. 


        }
于 2013-08-10T05:48:19.553 に答える
0

これを試して

Scanner scan = new Scanner(System.in);
    System.out.println("Please enter your words");
    String word = scan.nextLine();
    String i = new String();
    for (char ch : word.toCharArray()) {
        System.out.println(i+ch);
        i=i+" ";
    }
于 2013-08-10T05:49:08.550 に答える
0

commons-lang のStringUtilsを使用:

int indent = 0;
for (final char c : "ZIP".toCharArray()) {
    System.out.println(StringUtils.repeat(" ", indent) + c);
    indent++;
}
于 2013-08-10T05:50:42.463 に答える
0

連結には StringBuilder を使用したいと思います。

String s = "ZIP";
StringBuilder sb = new StringBuilder();

for (int i = 0; i < s.length(); i++) {
   System.out.println(sb.toString()+ s.charAt(i));
   spaces.append(" ");
}
于 2013-08-10T05:52:26.333 に答える