2012-05-29 4 views
1

나는 txtBox1이라는 텍스트 상자, txtbox2라는 두 번째 텍스트 상자, 레이블 및 단추가 있습니다.다차원 배열 숙제

  1. 두 개의 정수 매개 변수를 받아들이고 문자열을 반환하는 함수를 만들어야합니다.
  2. 은 이러한 매개 변수에 전달 된 정수를 기반으로 2 차원 배열을 만듭니다. 첫 번째 정수 매개 변수는 txtbox1을 나타내며 두 ​​번째 정수 매개 변수는 txtbox2를 나타냅니다. 루프 중첩
  3. 사용하여 루프 구조의 일부로서 1
  4. 부터 증분 값이 배열 요소를 채우기 변수 문자열의 모든 요소 값을 추적 쉼표로 구분한다.

    :Length=15 
    (0,0): 1  
    (0,1): 2 
    (0,2): 3 
    (0,3): 4 
    (0,4): 5 
    (1,0): 6 
    (1,1): 7 
    (1,2): 8 
    (1,3): 9 
    (1,4): 10 
    (2,0): 11 
    (2,1): 12 
    (2,2): 13 
    (2,3): 14 
    (2,4): 15  
    

    및 요소로 채워 값 1,2,3,4 것이다 : 사용자 txtbox2에 txtbox1 3 및도 5에 진입하고 버튼을 클릭하는 경우, 예를 들어, 우리는 다음처럼 배열을 얻을 것 , 5,6,7,8,9,10,11,12,13,14 및 15

  5. 전달 된 문자열의 형식은 "배열은 3 x 5이고 배열 요소의 값은 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 ".
  6. Label을이 문자열 값으로 채 웁니다. 여기

... 나는 지금까지이 무엇을 좋아

Shared Function myArray(int1 As Integer, int2 As Integer) As String 

    Dim Array(int1 - 1, int2 - 1) As Integer 
    Dim i As Integer 
    Dim j As Integer 
    Dim counter As Integer = 1 

    For i = 0 To int1 - 1 
     For j = 0 To int2 - 1 
      Array(i, j) = counter 
      counter += 1 
     Next 
    Next 

    Return Array(i, j) 

End Function 

답변

0

, 그래서 당신은 거의 있었다. 나는 네가 단지 # 4에 머물러 있다고 가정하고있다. 그리고 잘못된 구문을 입력하면 실례합니다. VB에서 오랜 시간을 보지 못했고 메모리에서이 작업을하고 있습니다.

은의 당신이 가지고 무엇인지 살펴 보자 : 증분 값으로 배열을 채울 counter를 사용하는

다음
For i as integer = 0 To int1 - 1 
    For j as integer = 0 To int2 - 1 
     Array(i, j) = counter 
     counter += 1 

. 루프에서 그 변수를 사용,

Dim Array(int1 - 1, int2 - 1) As Integer 
Dim i As Integer 
Dim j As Integer 
Dim counter As Integer = 1 
Dim output as String = nothing 

을 다음 :

첫번째 : 상단에 문자열 변수를 추가 당신은 다른 문자열 변수에이 변수를 사용하고, 단지 그들 사이에 쉼표를 추가 할 수 있습니다

For i = 0 To int1 - 1 
    For j = 0 To int2 - 1 
     Array(i, j) = counter 
     output += "" & counter & ", " 
     counter += 1 
    Next 
Next 

마지막으로, 당신의 return이 배열의 요소 대신 output을 보내 변경

return output 

문자열의 서식을 지정하여 마지막 ","이 표시되지 않으면 Strings.Left 함수를 살펴보십시오. 다음과 같이 바뀝니다.

output = Left(output, Len(output) - 2) 'I am not sure if this is a 2 or 3, run and test 

좋아요. 명확한 내용이나 다른 것을 요청하십시오.

+0

작동 원리에 대해 고맙습니다. 출력물을 사용할 때 문자열 대신에 2로 시작합니다. – developthestars

+0

카운터 변수에서 = 1을 취하여이를 계산합니다. 모든 도움을 주셔서 감사합니다! – developthestars

+0

작전, 네가 맞다. 나는 올바른 답을 편집 할 것입니다. 다행히 도울 수있어. – gunr2171