c++ 를 배우고 있는 학생입니다.
3x3 배열에서 0행의 값들은 각각 rand()%7 + 1 을 한 값들을 넣구요
1행 2행의 값은 그 이전행들의 값에서 + 1 을 한 값을 넣습니다.
예를들면...
4 1 5
5 2 6
6 3 7
다음과 같이 넣을건데요,
+1을 하다가 7을 넘어서버리면 안되니까 8과같은 경우는 1로 , 9와같은 경우는 2로 만들어 주고 싶습니다.
삼항연산자를 사용해서 slot[x][y] > 7 ? slot[x][y] % 7 : slot[x][y] 와 같이 사용해버리면 배열이여서 일일히 찾아서 계산하는데
시간이 오래걸릴것같아 이런식의 코딩은 안좋을거 같다고 생각이 들었는데
어떤식으로 풀어내면 될까요?
char slot[3][3];
for (int i = 0; i < 3; i++) {
slot[0][i] = rand() % 7 + 1;
}
for (int i = 1; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
slot[i][j] = slot[i-1][j] + 1;
// 1~7 사이의 값이어야 하는데...넘어서면 어떡하지?
}
}