[UNITY]/TIL: UNITY

[달리기반 퀘스트] 이중반복문을 사용한 구구단 출력

네,가능합니다 2024. 9. 5. 15:22

세로출력 예시

2 x 1 = 2    3 x 1 = 3    4 x 1 = 4    ...   9 x 1 = 9
2 x 2 = 4    3 x 2 = 6    4 x 2 = 8    ...   9 x 2 = 18
...
2 x 9 = 18   3 x 9 = 27   4 x 9 = 36   ...   9 x 9 = 81

 

가로출력 예시

2 x 1 = 2    2 x 2 = 4    2 x 3 = 6    ...   2 x 9 = 18
3 x 1 = 3    3 x 2 = 6    3 x 3 = 9    ...   3 x 9 = 27
...
9 x 1 = 9    9 x 2 = 18   9 x 3 = 27   ...   9 x 9 = 81

 

위와같이 출력이 되게 작성하라는 퀘스트를 해보려고 한다.

 

아래와 같은 코드를 작성했는데, 해결이 되질 않았다.

int[] a = new int[9];
int[] b = new int[9];
    
for (int i = 1; i <= 10; i++)
{
    a[i] = (i+1);
    b[i] = i;
    int c = a[i] * b[i];
    Console.WriteLine($"{a[i]} x {b[i]} = {c}");
}

 

힌트를 보니 이중 반복문을 사용해야한다고 한다.

 

그래도 줄을 바꾸지 않고 출력하는 방법을 몰라 찾아봤다.

 

Console.WriteLine 에서 Line를 빼주면 줄 바꿈이 없이 입력이 된다고 한다. 

그러면 코드를 다시 작성해보자.

 

for (int i = 1; i <= 9; i++)
{
    for (int j = 1; j <= 8; j++)
    {
        Console.Write($"{j + 1} x {i} = {(j + 1) * i}  ");
    }
    Console.WriteLine();
}

 

위와같은 코드로 세로출력을 성공했다.

 

그리고 가로출력코드는 아래와 같다.

 

for (int i = 1; i <= 9; i++)
{
    for (int j = 1; j <= 9; j++)
    {
        Console.Write($"{i+1} x {j} = {(i+1)*j}  ");
    }
    Console.WriteLine();
}

 

오늘도 성공 !