반응형
플로이드의 삼각형
파라미터로 정수형 height를 받고, 높이가 height인 '직각 이등변 삼각형'을 출력할텐데요.
이번에는 * 대신 숫자가 순서대로 출력되는 플로이드의 삼각형입니다!
package Midterm.Five;
public class Main {
public static void main(String[] args) {
ShapePrinter printer = new ShapePrinter();
// 테스트
printer.printFloydsPyramid(3);
System.out.println("----------");
printer.printFloydsPyramid(5);
System.out.println("----------");
printer.printFloydsPyramid(15);
}
}
package Midterm.Five;
public class ShapePrinter {
public void printFloydsPyramid(int height) {
// 숫자 자리 구하기 (5)
int length = String.valueOf(height * (height + 1) / 2).length();
// 인쇄될 수 (6)
int number = 1;
// 반복문 1 - 행을 바꾸는 반복문 (1)
for (int row = 1; row <= height; row++) {
// 한 행에서 인쇄될 내용을 담는 문자열 선언 (3)
String line = "";
// 반복문 2 - 한 행에서 열을 바꾸는 반복문 (2)
for (int col = 1; col <= row; col++) {
// 반복문 3 - 한 열 안에서 자리수를 맞추는 반복문 (7)
for (int i = String.valueOf(number).length(); i < length; i++) {
line += " ";
}
// 실제 인쇄될 수를 문자열에 더하고 한 칸 띄워주기 (8)
line += (number + " ");
number++;
}
// 출력 (4)
System.out.println(line);
}
}
}
본 내용은 Codeit의 '자바 기초' 강의를
참고하여 작성한 내용입니다.
반응형
'Languages > Java' 카테고리의 다른 글
[자바 객체 지향 프로그래밍] 04. 자바, 더 정확하게! (0) | 2021.03.02 |
---|---|
[자바 객체 지향 프로그래밍] 03. 중간고사: 문제 해결 능력 기르기 (0) | 2021.02.28 |
[자바 객체 지향 프로그래밍] 03. 중간고사: 문제 해결 능력 기르기 (4) | 2021.02.04 |
[자바 객체 지향 프로그래밍] 03. 중간고사: 문제 해결 능력 기르기 (0) | 2021.02.02 |
[자바 객체 지향 프로그래밍] 03. 중간고사: 문제 해결 능력 기르기 (0) | 2021.02.01 |