상세 컨텐츠

본문 제목

Java 반복문 별출력

개발생활/Java

by 한국인맛집 2017. 10. 31. 02:47

본문

반응형

Java, C/c++ 프로그래밍 공부중 자주등장하는 문제이다.


다중반복문, for문을 활용하여 별찍는 문제이다.


예를 들면


1)

*

**

***

****

*****


2)

*****

****

***

**

*


3)

@@@@@
#@@@@
##@@@

###@@

####@

#####


위에 3종류의 문제에 많이 고민하고 어려움을 느낍니다.


오랜만에 되돌아보며 코드를 짜보았습니다.


처음접할시 어떤식으로 응용할지 고민이 많습니다.


하지만 반복문문제를 활용하기 앞서 규칙이있습니다.

1번문제의경우 별이 1개씩 증가하는 규칙이있어서


다중for 문을 활용할시 아래와 같이 코드를 짠다면 충분히 해결됩니다.


1번 해결법



1번의 해결의 풀이를하면

배열이 5x5 일경우 한줄에 1개씩 생성됩니다 이걸 다중for 문에 연결한다면 i반복문은 k반복문 5회가 마무리되어야 수가 증가합니다,

즉 배열 i 가 k 보다 클경우 출력하게되면 문제해결입니다.

i = 1 , k = 0    생성!

i = 1 , k = 1     X

i = 1 , k = 2     X

i = 1 , k = 3     X

i = 1 , k = 4     X


i = 2 , k = 0    생성!

i = 2 , k = 1    생성!

i = 2 , k = 2     X

i = 2 , k = 3     X

i = 2 , k = 4     X


    ...

i = 5 , k = 0    생성!
i = 5 , k = 1    생성!
i = 5 , k = 2    생성!
i = 5 , k = 3    생성!

i = 5 , k = 4    생성!


이런식으로 생각하시면 쉽습니다.



2번 해결방법


2번문제의 경우 1번의 역이라 생각하면 좋겠네요.





3번 해결방법

1번과 2번 을 해결하셨다면 3번도 어렵지 않습니다.


1번의 내용과 2번내용을 병합하면 되죠 


처음접할시 어렵지만 규칙만 알아낸다면 정말 쉬운 반복문이고 매우매우 유용하답니다.



반응형

'개발생활 > Java' 카테고리의 다른 글

Java Class  (0) 2017.11.01
Java Typecasting  (0) 2017.11.01
Java 다차원배열 연습.  (0) 2017.10.31
Java Basic Array 배열  (0) 2017.09.27
Java Basic 사용자 입력.  (0) 2017.09.26
Java Basic 개발환경 구축법.  (0) 2017.09.26

관련글 더보기