07년 비베 기말시험 문제중에서
---------------------------------------------------------------
42. 다음 프로그램을 수행하였을 때 출력되는 값은 얼마인가? (3점)
Private Sub Command1_Click()
Dim a, b, x
For a = 1 To 10 Step 2
For b = 2 To 10 Step 2
x = x + b
Next b
Next a
Print x + a + b '<--출력
End Sub
① 165 ② 170
③ 173 ④ 178
---------------------------------------------------------------
'위 문제가 어떤 과정으로 계산되어 가는 가를 추적하기가 쉽지 않습니다
그래서 a,b,x값이 어떻게 계산되어 가는 가를 추적하도록 프로그램을
약간 수정 하였습니다.
Private Sub Command1_Click()
Dim a, b, x
For a = 1 To 10 Step 2
Print a ------------------>매번 a가 돌때마다 먼저 a값을 출력하도록 하고
For b = 2 To 10 Step 2
x = x + b --------------->b에 합해지는 x값
Print b, x --------------->그래서 b값과 x값을 매번 출력하고
Next b
Next a
Print x, a, b ------------>반복이 끝났을때의 각각의 값을 출력하고
Print x + a + b '<--문제의 답을 본다.
End Sub
[ 실행결과와 설명]

여기서 의문이 들 수 있는 문제는
a가 왜? 11이 되나(?) b는 또 12가 되었을까? x값이 최종값 150이니 그런다 치드라도...
이 문제는 전번 튜터님의 특강을 들으신 분들은 이해가 될것 입니다.
누가 이문제에 대하여 답해주시기를 바랍니다.
....ㅋㅋㅋ