javaで、ABCDEFGHIJという文字列を与えられた3つの文字数ごとに取り出して改行して表示したいです。例えば、1,1,8と与えられたら
A
B
CDEFGHIJ
という感じです。
3つの数字は
Scanner sc = new Scanner(System.in);
int h_1=sc.nextInt();
int h_2=sc.nextInt();
int h_3=sc.nextInt();
で与えられます。
[試してみたソースコード]
Java
1import java.util.*; 2 3 4public class Main { 5public static void main(String[] args) { 6 7 8Scanner sc = new Scanner(System.in); 9String S = "ABCDEFGHIJ"; 10int h_1 = sc.nextInt(); 11int h_2 = sc.nextInt(); 12int h_3 = sc.nextInt(); 13 14System.out.println(S.substring(0,h_1)); 15System.out.println(S.substring(h_1,h_2)); 16System.out.println(S.substring(h_2)); 17 18 19} 20} 21
[例と出力結果]
h_1=1,h_2=1,h_3=8の場合
A
BCDEFGH
h_1=3,h_2=4,h_3=3の場合
ABC
D
EFGHIJ
真ん中のsubstringの終わりに1を足してみたり2を足してみたり調節しても、必ず違う組み合わせで変な出力結果が出てしまいます。
どうすればきれいに出力できますか?
コードを実行しているのはpaiza.ioです。
回答5件
あなたの回答
tips
プレビュー