1부터 n까지, 1부터 m 까지 숫자가 적힌 색이 서로 다른 주사위 2개를 던졌을 때,
나올 수 있는 모든 경우를 출력해보자.
1부터 n까지, 1부터 m 까지 숫자가 적힌 색이 서로 다른 주사위 2개를 던졌을 때,
나올 수 있는 모든 경우를 출력해보자.
서로 다른 주사위의 면의 개수 n, m이 공백을 두고 입력된다.
(단, n, m은 10이하의 자연수)
나올 수 있는 주사위의 숫자가 한 세트씩 줄을 바꿔 모두 출력된다.
첫 수는 n, 두번째 수는 m으로 고정해 출력하도록 한다.
2 3
1 1
1 2
1 3
2 1
2 2
2 3
중첩의 원리...
반복 실행구조도 조건 실행구조와 마찬가지로 중첩의 원리가 적용된다.
반복 실행구조를 중첩해면 원하는 반복구조를 다양하게 만들어낼 수 있다.
예시
int i, j;
int n=3, m=6;
for(i=1; i<=n; i++)
{
for(j=1; j<=m; j++)
{
printf("%d %d ", i, j);
}
}
의 코드는 바깥쪽의 i가 1부터 n까지 로 바뀌는 각각의 동안에
안쪽의 j가 1부터 m까지 변하며 출력된다.
중첩 반복되는 코드 블럭의 내용이 논리적으로 1단위 이기 때문에 코드 블럭 기호를 생략하면 아래와 같이도 작성가능하다.
int i, j;
int n=3, m=6
for(i=1; i<=n; i++)
for(j=1; j<=m; j++)
printf("%d %d ", i, j);
반복 실행구조를 사용할 때에는 반복횟수를 기록해 두기 위해 i, j와 같은 변수를 선언해 사용해야 한다.