Download presentation
Presentation is loading. Please wait.
1
Visual Basic 반복문
2
학습목표 반복문 구구단 작성기로 익히는 반복문 For…Next문, For Each…Next문
Do…Loop문, While…End While문 구구단 작성기로 익히는 반복문 Visual Basic 2010
3
5.1 반복문 5.2 구구단 작성기로 익히는 반복문 Visual Basic 2010
4
반복문 주어진 조건이 만족하는 동안 또는 주어진 조건이 만족할 때까지 일정 구간의 실행문을 반복하기 위해 사용
For … Next For Each … Next Do … Loop While … Wend Visual Basic 2010
5
For … Next 정해진 횟수만큼 명령문 또는 명령문 블록을 반복 수행 형식 수행
변수를 “시작 값”으로 초기화 명령문을 한번 수행할 때마다 “증감치”만큼 증감 변수의 값이 종료 값보다 크면 반복 종료 증감치가 1씩 증가할 때는 생략 가능 For 변수 = 시작 값 To 종료 값 [Step 증감치] <명령문> Next [변수] Visual Basic 2010
6
예제5-1 1부터 10까지의 합 초기 화면 실행 화면 Visual Basic 2010
7
예제5-1 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text 10까지의 합 Label Label1
1부터 10까지의 합 TextBox txtResult Button 합 구하기 Visual Basic 2010
8
예제5-1 코드 작성 Private Sub Button1_Click(...) Handles Button1.Click
Dim intN as Integer Dim intSum as Integer ' 변수 intN에 1로 초기화시키고 10이 될 때까지 1씩 증가 For intN = 1 To 10 intSum = intSum + intN Next intN txtResult.Text = intSum End Sub Visual Basic 2010
9
예제5-2 1부터 100까지의 3의 배수의 합 초기 화면 실행 화면 Visual Basic 2010
10
예제5-2 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text 3의 배수의 합 Label Label1
1부터 100까지의 3의 배수의 합 TextBox txtResult Button 합 구하기 Visual Basic 2010
11
예제5-2 코드 작성 Private Sub Button1_Click(...) Handles Button1.Click
Dim intN as Integer Dim intSum as Integer ' 변수 intN에 1로 초기화시키고 100이 될 때까지 3씩 증가 For intN = 3 To 100 Step 3 intSum = intSum + intN Next ' 변수 intN 생략 txtResult.Text = intSum End Sub Visual Basic 2010
12
예제5-3 구구단의 2단에서 9단까지 출력(중첩 For…Next문) 초기 화면 실행 화면 Visual Basic 2010
13
예제5-3 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text 구구단 출력 ListBox lstResult Button
Visual Basic 2010
14
예제5-3 코드 작성 Private Sub Button1_Click(...) Handles Button1.Click
Dim intN, intM As Integer For intN = 2 To 9 ' 2부터 9까지 1씩 증가시키면서 반복 For intM = 1 To 9 ' 1부터 9까지 1씩 증가시키면서 반복 '리스트박스에 결과 출력 lstResult.Items.Add(intN & " x " & intM & " = " & intN * intM) Next intM ' 안쪽에서 반복되는 For Next intN End Sub Visual Basic 2010
15
예제5-4 문자열을 공백을 중심으로 분리 초기 화면 실행 화면 Visual Basic 2010
16
예제5-4 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text 문자열 분리 ListBox lstResult Button
Visual Basic 2010
17
예제5-4 코드 작성 Private Sub Button1_Click(...) Handles Button1.Click
Dim str1 As String = "Hello World" Dim str1Array() As String str1Array = str1.Split(" ") For i As Integer = 0 To str1Array.Length - 1 If str1Array(i) <> "" Then lstResult.Items.Add(str1Array(i)) End If Next End Sub Visual Basic 2010
18
For Each … Next 정해진 횟수만큼 명령문 또는 명령문 블록을 반복 수행 배열이나 컬렉션의 크기만큼 반복 형식 수행
배열과 유사하게 값이 연속해서 저장되어 있는 데이터 구조 형식 수행 변수에 컬렉션의 첫번째 값 대입 명령문을 한번 수행할 때마다 변수에 컬렉션의 다음 값 대입 더 이상 컬렉션에 값이 없으면 반복 종료 For Each 변수 In 컬렉션(배열)_이름 <명령문> Next [변수] Visual Basic 2010
19
예제5-5 배열을 이용한 For Each…Next문 초기 화면 실행 화면 Visual Basic 2010
20
예제5-5 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text For Each…Next문 TextBox
txtResult Button 1부터 5까지의 각각의 곱 Visual Basic 2010
21
예제5-5 코드 작성 Private Sub Button1_Click() Handles Button1.Click
Dim arr(5) As Integer Dim i As Integer, k As Variant For i = 1 To 5 '1부터 5까지 1씩 증가시키면서 반복 arr(i) = i * i Next i For Each k In arr ' 배열 arr의 0번째부터 값을 차례로 꺼내면서 반복 txtResult.Text = txtResult.Text & vbCrLf & k Next k End Sub Visual Basic 2010
22
Do … Loop 조건이 만족하는 동안 또는 만족할 때까지 반복 Until While 만족할 때까지 반복
현재 조건이 만족하는 동안 반복 컵이 가득 채워질때까지 계속 따라야지~~ 컵이 비어있는 한(동안) 계속 따라야지~~ Visual Basic 2010
23
Do … Loop 형식 조건 확인 후 실행 실행 후 조건 확인 Do {While 또는 Until} 조건식 <명령문>
Loop {While 또는 Until} 조건식 Visual Basic 2010
24
예제5-6 1부터 100까지의 3의 배수의 합(Do Until 사용) 초기 화면 실행 화면 Visual Basic 2010
25
예제5-6 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text Do Until 사용 TextBox txtResult
Button 1부터 100까지의 3의 배수의 합 Visual Basic 2010
26
예제5-6 코드 작성 Private Sub Button1_Click() Handles Button1.Click
Dim intN as Integer, intSum as Integer intSum = 0 : intN = 3 ' 두 개의 문장을 한 행에 쓸 때는 “:”로 구분 Do Until intN > 100 ' intN의 값이 100보다 큰 값을 가질 때까지 반복 intSum = intSum + intN intN = intN + 3 Loop txtResult.Text = intSum End Sub Visual Basic 2010
27
예제5-7 1부터 100까지의 3의 배수의 합(Do While 사용) 초기 화면 실행 화면 Visual Basic 2010
28
예제5-7 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text Do While 사용 TextBox txtResult
Button 1부터 100까지의 3의 배수의 합 Visual Basic 2010
29
예제5-7 코드 작성 Private Sub Button1_Click() Handles Button1.Click
Dim intN as Integer, intSum as Integer intSum = 0 : intN = 3 Do While intN <= 100 ' intN의 값이 100보다 작거나 같은 동안 반복 intSum = intSum + intN intN = intN + 3 Loop txtResult.Text = intSum End Sub Visual Basic 2010
30
While … Wend Do … Loop에 While을 이용한 경우와 유사 형식 수행 조건식이 만족하는 동안 명령문 수행
<명령문> Wend Visual Basic 2010
31
예제5-8 1부터 100까지의 3의 배수의 합(While 사용) 초기 화면 실행 화면 Visual Basic 2010
32
예제5-8 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text While 사용 TextBox txtResult
Button 1부터 100까지의 3의 배수의 합 Visual Basic 2010
33
예제5-8 코드 작성 Private Sub Button1_Click() Handles Button1.Click
Dim intN as Integer, intSum as Integer intSum = 0 : intN = 3 ' 두 개의 문장을 한 행에 쓸때는 “:”로 구분 While intN <= 100 ' intN의 값이 100보다 작거나 같은 동안 반복 intSum = intSum + intN intN = intN + 3 End While txtResult.Text = intSum End Sub Visual Basic 2010
34
5.1 반복문 5.2 구구단 작성기로 익히는 반복문 Visual Basic 2010
35
구구단 작성기로 익히는 반복문 그룹박스, 리스트박스, 라디오버튼을 배치하여 라디오버튼이 클릭되면 해당 구구단이 리스트박스에 출력 그룹박스 리스트박스 라디오버튼 Visual Basic 2010
36
컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Form1 Text 구구단 작성기 GroupBox grpDan 9 X 9단
ListBox lstResult ScrollAlwaysVisible True RadioButton rdoB2 2단 rdoB3 3단 rdoB4 4단 rdoB5 5단 rdoB6 6단 rdoB7 7단 rdoB8 8단 rdoB9 9단 Visual Basic 2010
37
코드 작성(1) 텍스트 속성이 “2단”인 라디오버튼을 클릭하여 CheckedChanged 이벤트 발생 For…Next문 이용
Private Sub rdoB2_CheckedChanged(...) Handles rdoB2.CheckedChanged Dim i, rst As Integer lstResult.Items.Clear() For i = 1 To 9 rst = 2 * i lstResult.Items.Add(2 & " x " & i & " = " & rst) Next i End Sub Visual Basic 2010
38
코드 작성(2) 텍스트 속성이 “2단”인 라디오버튼을 클릭하여 CheckedChanged 이벤트 발생 Do…Loop문 이용
Private Sub rdoB2_CheckedChanged(...) Handles rdoB2.CheckedChanged Dim i, rst As Integer lstResult.Items.Clear() i = 1 Do While I <= 9 rst = 2 * i lstResult.Items.Add(2 & " x " & i & " = " & rst) i = i + 1 Loop End Sub Visual Basic 2010
39
실행 화면 Visual Basic 2010
Similar presentations