한 줄에 별 2개씩 증가하는 코드

김덕근·2022년 12월 10일
0

java

목록 보기
2/7
post-thumbnail
	public void practice11() {
		
		Scanner sc = new Scanner(System.in);
		
		System.out.print("정수 입력 : ");
		int input = sc.nextInt();

		for(int br = input; br >= 1; br--) { // 4,3,2,1
			int save = input - (br - 1); //reverse (br for문 실행마다 1,2,3,4)
			save = save + (save - 1); // 1,2,3,4순서를 이용해서 1,3,5,7 만들기
			
			for(int a = 1; a <= br - 1; a++) {
				System.out.print(" ");
			}
			for(int b = 1; b <= save; b++) {
				System.out.print("*");
			}
			
			System.out.println();
		}
	}
	
    

출력 결과 
ex)
정수 입력 : 4
   *
  ***
 *****
*******

int save = input - (br - 1);
input(고정값), br은 1씩 줄어들며 변하는 수
첫 for문에 br을 이용해서 역순으로 만들어준다

1,2,3,4 순서에 X += 2; 를 적용하는 공식
X = X + (X - 1);

출력 결과의 별을 유심히 보다가 공식을 알아냈다

처음 1개 = 1
두번째 2개 + 1 = 3
세번째 3개 + 2 = 5
4번째 4개 + 3 = 7
번째 X + (X - 1); = 9

profile
안녕하세요!

0개의 댓글