00 01 부터 98 99까지 만드는 코딩이다. 01 01 02 02 99 99 이런식으로 중복으로 나오면 안된다.
public class My_print_comb{
public static void main(String[] args){
my_print_comb();
}
}
public static void my_print_comb(){
for(int i=0;i<=99;i++){
for(int j=i+1;j<=99;j++){
if(j>i){
String formatted = String.format("%02d %02d ", i, j);
System.out.print(formatted);
}
}
}
}
00 01 처음을 생각해보자. 이때 뒤에 j는 항상 앞에 i보다 1이 더해진 상태에서 출력되어야 하기 때문에 j=i+1로 기준점을 잡았다.
00 99까지 모두 출력된 후 , 이제 01 02로 갈것이다. 이때도 01 99까지 갈 것이고, 02 03도 02 99까지 갈 것이다..
마지막으로 가보자.
마지막 값은 98 99가 나와야한다. 하지만 i도 99까지 갈 수 있는데, 이러한 상황이 발생하면 안된다.
따라서 조건문에 j>i로 해주었다.
%02d로 해주면 어떤 숫자도 00 01 이런식으로 출력된다.
'JavaPool(기초 로직연습)' 카테고리의 다른 글
소수면 1출력 , 소수가 아니면 0 출력 (0) | 2022.01.31 |
---|---|
숫자 세개 반복해서 최솟값 만들기 789 (0) | 2022.01.30 |
받은 문자열 반대로 출력하기 (0) | 2022.01.30 |
배열 오름차순으로 출력(temp 활용) (0) | 2022.01.08 |
char에서 스트링 반대로 출력 (temp로 트랙킹하기) (0) | 2022.01.08 |
댓글