2014-01-06 2 views
-1

콘솔에서 정수 값 x을 읽고 다차원을 출력해야하는 프로그램이 있습니다. 열 j에있는 행 i의 값은 i *j이어야합니다. 내가 입력 3, 매트릭스는 다음과 같이해야하는 경우 : 예를 들어 지금C#의 매트릭스 배열

1 2 3 

2 4 6 

3 6 9 

, 나는 나의 주요 기능에이 코드를 작성했습니다 :

 Console.WriteLine("Input a value: "); 
     int x = int.Parse(Console.ReadLine()); 

     int[,] arr = new int[x,x]; 

     for (int i = 0; i < x; i--) 
     { 
      for (int j = 0; j < x; j++) 
      { 
       arr[i, j] = arr[i, j] + arr[i, j]; 

       Console.Write(arr[i, j] + " ");   
      } 

     } 
     Console.ReadLine(); 

을 그래서, 때 내 코드에서 입력 3 출력을 얻었습니다 :

0 0 0 

여기서 내가 뭘 잘못하고 있니?

+1

'난 -'내가 디버거와 그것을 통해' –

+2

단계 ++, 그리고 실수가 명백해야한다'해야합니다. – Servy

+0

그걸 시도했지만, 그 결과는 다음과 같습니다. 0 0 0 0 0 0 0 0 그냥 한 행에 넣습니다. – user3163066

답변

2
  1. 당신은 i++i--을 변경해야합니다.

  2. Console.WriteLine()을 내부에 넣은 후 for 루프. 모든 x 숫자 뒤에 줄 바꿈을 인쇄하여 행렬처럼 반복합니다. 당신은 말을하고

  3. j에 행 i의 값은 i *j해야하지만, 난 당신의 코드에서 어떤 i * j을 볼 수 없습니다. 계산을 다음과 같이 변경하십시오 : arr[i, j] = i * j;. 그것을해야

하지만 루프 0에서 x - 1에 실행하고 당신이 그것을 1에서 당신이 계산을 적용하고 arr[i, j] = (i + 1) * (j + 1); 확인해야 x에있는 것처럼 결과가되고 싶어하기 때문이다. 나는 J를 *에 편곡의 [I, J]이어야의 값이 동일

Console.WriteLine("Input a value: "); 
int x = int.Parse(Console.ReadLine()); 

int[,] arr = new int[x, x]; 

for (int i = 0; i < x; i++) 
{ 
    for (int j = 0; j < x; j++) 
    { 
     arr[i, j] = (i + 1) * (j + 1); 

     Console.Write(arr[i, j] + " "); 
    } 

    Console.WriteLine(); 
} 
Console.ReadLine(); 
+0

고마워요. 정말 도움이되었습니다. – user3163066

1

멋져요 saing 높은,하지만 누구 요 당신의 코드에 그 일을하지 :

전체 코드가 있어야한다.

변화

arr[i, j] = arr[i, j] + arr[i, j]; 

변경해야 할 또 다른 한가지

arr[i, j] = (i+1) * (j+1); 

것은 내가 때문에이 코드의 for 루프에 감소되고 있다는 것입니다 : 난 -. 으로 변경하십시오. i ++

0

int [,]가 모두 0으로 채워진 것을 보는 것은 0 + zero를 추가하는 것입니다.

은 당신이 정말로 원하는 것은이처럼 보인다 :

int[,] arr = new int[x,x]; 

    for (int i = 0; i < x; i++) 
    { 
     for (int j = 0; j < x; j++) 
     { 
      arr[i, j] = (i+1) * (j + 1); 

      Console.Write(arr[i, j] + " ");   
     } 
     Console.Write("\r\n"); 
    } 
    Console.ReadLine(); 
+0

그러면 원하는 질문과 동일한 출력이 생성됩니다. –