Download presentation
Presentation is loading. Please wait.
Published byLennart Øverland Modified 5년 전
1
3 장 Visual Basic 2010 기본 문법 3.4 제어문 1) 조건문 2) 반복문 3) 기타 제어문
2
프로그램의 순차적인 실행순서를 변경시키는 실행문
Visual Basic 2010 기본 문법 3.4 제어문 프로그램의 순차적인 실행순서를 변경시키는 실행문 프로그램을 실행하는 과정에서 조건에 대한 판단이나 반복적인 작업을 해야 할 경우에 사용하는 문장이다. 제어문 : 조건문, 반복문 종류 명령문 내용 조건문 (판단문) ㆍif 문 ㆍSelect ... Case 문 ㆍTry ... Catch ... Finally 문 어떤 조건의 참(true) 또는 거짓(false)에 따라 분기하는 구조 반복문 ㆍDo ... Loop 문 ㆍFor ... Next 문 ㆍFor Each ... Next 문 ㆍWhile ... End While 루프(loop) 구조라고도 하며, 어떤 조건을 만족할 때까지 또는 만족하는 동안 지정된 문장을 반복 실행한다. 기타 제어문 ㆍUsing ... End Using 문 ㆍWith ... End With 문
3
Visual Basic 2010 기본 문법 3.4 제어문 (1) 조건(판단)문
주어진 조건을 검사하여 그 결과인 참(true) 또는 거짓(false)에 따라 해 당되는 코드를 실행할 때 사용 조건(판단)문 중에서 대표적인 것이 iF 문이다. 1) if 문 if 문에는 주어진 조건식의 개수에 따라 단일 if문과 중첩 if문이 있다. 단일 if 문 if 조건식 Then 명령문1 Else 명령문2 End if 사용 예 if iNumber > 30 Then iNumber = 150 If 문에 의해 실행하고자 하는 명령문이 조건식이 참인 경우에 수행할 문장이 하나이고, 거짓인 경우에는 수행할 문장이 없을 경우에는 Else문과 End if문을 생략해도 된다.
4
Visual Basic 2010 기본 문법 3.4 제어문 다음과 같이 수행할 문장이 두 개 이상인 경우에는 End if문을 사용해야 한다. 사용 예 if iNumber > 30 Then iNumber = 150 sNumber = 30 End if if문의 조건식이 참인 경우와 거짓인 경우 수행 할 문장이 다른 경우에는 다음과 같이 Else문을 사용해야 한다. 사용 예 if iNumber > 30 Then iNumber = 150 else sNumber = 30 End if
5
Visual Basic 2010 기본 문법 3.4 제어문 중첩 iF문
단일 if문과 달리 여러 개의 조건식을 계속 비교할 경우에는 단일 if 문이 여러 개 연결된 중첩 if문을 사용해야 한다. if 조건식1 Then 명령문1 Elseif 조건식2 Then 명령문2 Elseif 조건식3 Then 명령문3 ..... Else 명령문n End if
6
Visual Basic 2010 기본 문법 3.4 제어문 사용 예
어떤 학생의 과목 점수를 입력 받아서 학점의 등급을 출력하는 코 드이다. if iJumsu >= 90 then MessageBox.Show("A 학점", "학점 등급") Elseif iJumsu < 90 And iJumsu >= 80 Then MessageBox.Show("B 학점", "학점 등급") Elseif iJumsu < 80 And iJumsu >= 70 Then MessageBox.Show("C 학점", "학점 등급") Elseif iJumsu < 70 And iJumsu >= 60 Then MessageBox.Show("D 학점", "학점 등급") Else MessageBox.Show("F 학점", "학점 등급") End if
7
예제 프로그램 : iF문 예제 프로그램(IF문)
Visual Basic 2010 기본 문법 예제 프로그램 : iF문 예제 프로그램(IF문) 점수를 입력 받아 입력 받은 점수에 따른 학점을 출력하는 프로그램 작성 1. 폼을 설계한다.
8
Visual Basic 2010 기본 문법 2. 객체(폼, 컨트롤)의 속성값을 설정한다. 객체의 종류 객체 명
속성 및 설정 값 폼 Form1 Text : iF문 실행 레이블 Label1 Text : 점수 : 텍스트박스 TextBox1 (Name) : txtScore Text : 명령 버튼 Button1 (Name) = btnCal Text : 학점등급계산
9
3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Visual Basic 2010 기본 문법 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Public Class Form1 Private Sub btnCal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCal.Click Dim iJumsu As Integer '변수의 정수형 선언 iJumsu = txtScore.Text '텍스트 박스의 내용을 변수에 옮긴다 if iJumsu >= 90 Then MessageBox.Show("A 학점", "학점 등급") 'A 학점 MessageBox에 출력 Elseif iJumsu < 90 And iJumsu >= 80 Then MessageBox.Show("B 학점", "학점 등급") Elseif iJumsu < 80 And iJumsu >= 70 Then MessageBox.Show("C 학점", "학점 등급") Elseif iJumsu < 70 And iJumsu >= 60 Then MessageBox.Show("D 학점", "학점 등급") Else MessageBox.Show("F 학점", "학점 등급") End if End Sub End Class
10
Visual Basic 2010 기본 문법 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
프로젝트 저장 대화상자에서 이름을 “IF문”으로, 위치를 “C:\VB예제 \chapter03”으로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된다.
11
Visual Basic 2010 기본 문법 3.4 제어문 2) Select … Case 문
Visual Basic은 중첩 if문의 대용으로 Select Case문을 제공한다. 이것 은 여러 블록의 문장 중에서 선택적으로 한 블록만 실행하고 싶을 때 사용한다. 사용 형식 Select Case 조건식 Case 비교값1 명령문1 Case 비교값2 명령문2 Case 비교값3 명령문3 [Case Else 명령문n] End Select if문의 Case 절의 다양한 조건식 Case 1 To 4 : 조건식의 값이 1부터 4까지이면 조건을 만족 Case 11,13,14 : 조건식의 값이 11,13,14중의 하나이면 조건을 만족 Case Is > 20 : 조건식의 값이 20 보다 크면 조건을 만족
12
예제 프로그램 : Select문 예제 프로그램(Select문)
Visual Basic 2010 기본 문법 예제 프로그램 : Select문 예제 프로그램(Select문) 점수를 입력 받아 입력 받은 점수에 따른 학점을 출력하는 프로그램 작성 1. 폼을 설계한다.
13
Visual Basic 2010 기본 문법 2. 객체(폼, 컨트롤)의 속성값을 설정한다. 객체의 종류 객체 명
속성 및 설정 값 폼 Form1 Text : Select문 실행 레이블 Label1 Text : 점수 : 텍스트박스 TextBox1 (Name) : txtScore Text : 명령 버튼 Button1 (Name) = btnCal Text : 학점등급계산
14
3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Visual Basic 2010 기본 문법 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Public Class Form1 Private Sub btnCal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCal.Click Dim iJumsu As Integer '변수의 정수형 선언 iJumsu = txtScore.Text '텍스트 박스의 내용을 변수에 저장 Select Case iJumsu Case Is >= 90 MessageBox.Show("A 학점", "학점 등급") 'A 학점을 MessageBox에 출력 Case Is >= 80 MessageBox.Show("B 학점", "학점 등급") Case Is >= 70 MessageBox.Show("C 학점", "학점 등급") Case Is >= 60 MessageBox.Show("D 학점", "학점 등급") Case Else MessageBox.Show("F 학점", "학점 등급") End Select End Sub End Class
15
Visual Basic 2010 기본 문법 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
프로젝트 저장 대화상자에서 이름을 “Select문”으로, 위치를 “C:\VB예제 \chapter03”으로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된다.
16
Visual Basic 2010 기본 문법 3.4 제어문 3) Try ·· Catch ·· Finally 문
예외사항이 발생할 경우에 실행할 수 있는 블록을 만들어 처리한다. Try문에 있는 문장들은 예외사항이 발생하지 않는 경우에 순차적으로 문장을 실행한다. 그러나 예외사항이 발생하면 Catch문으로 이동하여 그 블록에 있는 문장을 실행한다. Finally문의 블록은 예외사항의 발생 유무에 관계없이 반드시 실행한다. 사용 형식 Try a = b \ c ‘에러를 확인할 문장 Catch a = 0 'c값이 0인 경우 강제로 a를 0으로 만듬 Finally MessageBox.show (a) ‘Try .. Catch가 끝나면 반드시 실행됨 End Try
17
Visual Basic 2010 기본 문법 3.4 제어문 (2) 반복문
프로그램내의 일련의 문장을 여러 번 반복 실행하고자 할 때 사용한다. 반복 처리를 하는 대표적인 반복문으로는 For ~ Next문과 Do While ~ Loop, Do Until ~ Loop, For Each ... Next 문 등을 사용한다. 1) Do While ~ Loop문 Do ~ Loop문은 While 다음에 주어진 조건식을 판단하여 참인 경우에 반복 문장을 수행하며, 조건식이 거짓이 될 때까지 반복 수행하게 된다. 실행중에 Do ~ Loop문을 빠져나와야 할때에는 Exit Do문을 사용한다. 사용 형식 Do While 조건식 Do [ 명령문들 ] [ 명령문들 ] [ Exit Do ] [ Exit Do ] [ 명령문들 ] [ 명령문들 ] Loop Loop While 조건식
18
Visual Basic 2010 기본 문법 3.4 제어문 Do Until ~ Loop문
Do Until ~ Loop문은 Do While ~ Loop 문과 조건이 반대이다. 조건식이 거짓일 때만 Loop 실행한다. 사용 형식 Do Until 조건식 Do [ 명령문들 ] [ 명령문들 ] [ Exit Do ] [ Exit Do ] [ 명령문들 ] [ 명령문들 ] Loop Loop Until 조건식 Do ~ Loop문의 비교 문의 종류 조건식 판단 실행 조건 Do While ... Loop 문 제일 처음 명령문을 한번도 실행하지 않을 수도 있음 Do Until ... Loop 문 Do ... Loop While 문 명령문을 한번 실행하고 나서 최소한 한번 명령문 실행 Do ... Loop Until 문
19
Visual Basic 2010 기본 문법 3.4 제어문 Do While ~ Loop문 Do Until ~ Loop문 사용 예
Dim iCount As Integer = 1 Do While iCount <= 20 Debug.WriteLine(iCount) ‘출력창에 표시 iCount = iCount + 1 Loop ····· 20 Do Until ~ Loop문 사용 예 Dim iCount As Integer = 1 Do Until iCount > 20 Debug.WriteLine(iCount) ‘출력창에 표시 iCount = iCount + 1 Loop ····· 20
20
예제 프로그램 : Do … Loop문 예제 프로그램(DoLoop문)
Visual Basic 2010 기본 문법 예제 프로그램 : Do … Loop문 예제 프로그램(DoLoop문) 조건 값을 입력 받아 Do ~ Loop문을 실행한 후 결과 값을 출력하는 프로그램 작성 1. 폼을 설계한다.
21
Visual Basic 2010 기본 문법 2. 객체(폼, 컨트롤)의 속성값을 설정한다. 객체의 종류 객체 명
속성 및 설정 값 폼 Form1 Text : DoLoop문 실행 레이블 Label1 Text : 조건값 텍스트박스 TextBox1 (Name) : txtInput Text : 명령 버튼 Button1 (Name) = btnBt1 Text : Do … While Loop문 Button2 (Name) = btnBt2 Text : Do … Until Loop문 Button3 (Name) = btnBt3 Text : Do … Loop While문 Button4 (Name) = btnBt4 Text : Do … Loop Until문
22
3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Visual Basic 2010 기본 문법 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Private Sub btnBt1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBt1.Click Dim iCondition As Integer Dim iCount As Integer = 1 iCondition = txtInput.Text Do While iCount <= iCondition iCount = iCount + 1 Loop MessageBox.Show("프로그램 종료후 Count의 값=" & iCount, "Do While ... Loop 문") End Sub Private Sub btnBt2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBt2.Click Do Until iCount > iCondition MessageBox.Show("프로그램 종료후 Count의 값=" & iCount, "Do Until ... Loop 문")
23
3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Visual Basic 2010 기본 문법 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Private Sub btnBt3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBt3.Click Dim iCondition As Integer Dim iCount As Integer = 1 iCondition = txtInput.Text Do iCount = iCount + 1 Loop While iCount <= iCondition MessageBox.Show("프로그램 종료후 Count의 값=" & iCount, "Do ... Loop While 문") End Sub Private Sub btnBt4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBt4.Click Loop Until iCount > iCondition MessageBox.Show("프로그램 종료후 Count의 값=" & iCount, "Do ... Loop Until 문")
24
Visual Basic 2010 기본 문법 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
프로젝트 저장 대화상자에서 이름을 “DoLoop문”으로, 위치를 “C:\VB예 제\chapter03”으로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된 다.
25
Visual Basic 2010 기본 문법 3.4 제어문 2) For ... Next 문
명령문들을 반복적으로 실행하는 명령문으로 정해진 횟수만큼 일정한 명령문들을 반복한다. 사용 형식 For 반복 변수 = 초기값 To 최종값 [Step 증가값] 반복 수행할 명령문 [Exit For] Next 반복 변수 실행과정 반복 변수 : 반복문내에서 현재 반복상태를 나타내는 변수 초기값 : For ~ Next문을 수행할 반복 변수의 처음 기본값 최종값 : For ~ Next문을 수행할 반복 변수의 최종값 증가값 : 반복 변수가 For ~ Next문을 수행한 이후 증가하는 반복 변수의 크기를 결정하는 값으로 증가값이 1인 경우 Step문을 생략할 수 있다. Exit For : 최종값까지 For ~ Next문을 수행하지 않고, 강제적으로 반복문을 빠져나올 때 사용하는 명령문
26
Visual Basic 2010 기본 문법 3.4 제어문 증감값이 양수인 경우 증감값이 음수인 경우
Dim iCount As Integer For iCount = 1 To 20 step 1 Debug.WriteLine(iCount) '1 부터 20까지 출력 Next iCount ····· 20 증감값이 음수인 경우 Dim iCount As Integer For iCount = 20 To 1 Step -1 Debug.WriteLine(iCount) ‘20 부터 1까지 출력 Next iCount ····· 1
27
Visual Basic 2010 기본 문법 3.4 제어문 중첩 구조
반복문 안에 다른 반복문이 있는 형태의 구조로 다중 반복문이라 한다. 가독성을 높이기 위해 들여쓰기를 사용한다. 사용 형식 For A = 1 To 10 For B = 1 to ' For A보다 들여쓰기를 해서 보기 좋도록 한다. if A * B > 90 Then ' For B보다 들여쓰기를 해서 보기 좋도록 한다. Messagebox.show(A & "," & B) End if Next B Next A 10,10
28
예제 프로그램 : For ~ Next문 예제 프로그램(ForNext문)
Visual Basic 2010 기본 문법 예제 프로그램 : For ~ Next문 예제 프로그램(ForNext문) 시작 값, 최종 값, 증가 값을 입력 받아 누적 합을 계산하는 프로그램 작성 1. 폼을 설계한다.
29
Visual Basic 2010 기본 문법 2. 객체(폼, 컨트롤)의 속성값을 설정한다. 객체의 종류 객체 명
속성 및 설정 값 폼 Form1 Text : For Next문 실행 레이블 Label1 Text : 시작값 Label2 Text : 최종값 Label3 Text : 증가분 텍스트박스 TextBox1 (Name) : txtInput1 Text : TextBox2 (Name) : txtInput2 TextBox3 (Name) : txtInput3 명령 버튼 Button1 (Name) = btnResult Text : 실행
30
3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Visual Basic 2010 기본 문법 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Public Class Form1 Private Sub btnResult_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnResult.Click Dim iStart, iEnd, iStep, iCount As Integer Dim lSum As Long = 0 iStart = txtInput1.Text '시작값 iEnd = txtInput2.Text '최종값 iStep = txtInput3.Text '증가분 For iCount = iStart To iEnd Step iStep lSum = lSum + iCount '시작값과 최종값까지의 합 Next MessageBox.Show(iStart & "부터" & iEnd & "까지 증감분 " & iStep & " 합= " & lSum, "For ... Next 문") txtInput1.Text = "" '항목의 입력 데이터 제거 txtInput2.Text = "" txtInput3.Text = "" End Sub End Class
31
Visual Basic 2010 기본 문법 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
프로젝트 저장 대화상자에서 이름을 “ForNext문”으로, 위치를 “C:\VB예 제\chapter03”으로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된 다.
32
예제 프로그램 : For ~ Next문 예제 프로그램(ForNext문1)
Visual Basic 2010 기본 문법 예제 프로그램 : For ~ Next문 예제 프로그램(ForNext문1) 1 부터 100 까지의 짝수 합, 홀수 합, 누적 합을 계산하는 프로그램 작성 1. 폼을 설계한다.
33
Visual Basic 2010 기본 문법 2. 객체(폼, 컨트롤)의 속성값을 설정한다. 객체의 종류 객체 명
속성 및 설정 값 폼 Form1 Text : For ~ Next문 사용 예제 레이블 Label1 Text : 짝수 합 = Label2 Text : 홀수 합 = Label3 Text : 누적 합 = (Name) : lblEven BorderStyle : Fixed3D Font : 크기 12 (Name) : lblOdd (Name) : lblTotal 명령 버튼 Button1 (Name) : btnEven Text : 짝수 합 Button2 (Name) : btnOdd Text : 홀수 합 Button3 (Name) = btnTotal Text : 누적 합
34
3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Visual Basic 2010 기본 문법 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Public Class Form1 Private Sub btnEven_Click(sender As System.Object, e As System.EventArgs) Handles btnEven.Click Dim Even, i As Integer '정수형 변수 선언 For i = 1 To 100 if (i Mod 2) = 0 Then '짝수인지 홀수인지를 판단 Even = Even + i End if Next i lblEven.Text = "1 ~ 100까지 짝수 누적합 = " & Even End Sub
35
3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Visual Basic 2010 기본 문법 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Private Sub btnOdd_Click(sender As Object, e As System.EventArgs) Handles btnOdd.Click Dim Odd, i As Integer '정수형 변수 선언 For i = 1 To 100 if (i Mod 2) <> 0 Then '짝수인지 홀수인지를 판단 Odd = Odd + i End if Next i lblOdd.Text = "1 ~ 100까지 홀수 누적합 = " & Odd End Sub
36
3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Visual Basic 2010 기본 문법 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Private Sub btnTotal_Click(sender As Object, e As System.EventArgs) Handles btnTotal.Click Dim Sum, i As Integer '정수형 변수 선언 For i = 1 To 100 Sum = Sum + i Next i lblTotal.Text = "1 ~ 100까지 누적합 = " & Sum End Sub End Class
37
Visual Basic 2010 기본 문법 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
프로젝트 저장 대화상자에서 이름을 “ForNext문1”으로, 위치를 “C:\VB예 제\chapter03”으로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된 다.
38
예제 프로그램 : For ~ Next문 예제 프로그램(ForNext문2)
Visual Basic 2010 기본 문법 예제 프로그램 : For ~ Next문 예제 프로그램(ForNext문2) 반복변수 값과 반복 횟수를 알아보는 프로그램을 중첩 For~Next문을 사용하여 작성 1. 폼을 설계한다.
39
Visual Basic 2010 기본 문법 2. 객체(폼, 컨트롤)의 속성값을 설정한다. 객체의 종류 객체 명
속성 및 설정 값 폼 Form1 Text : 중첩 For ~ Next문 레이블 Label1 AutoSize : False Font : 크기 :12 Text : 결과 값 = Label2 (Name) = lblResult BorderStyle : Fixed3D Text : 명령 버튼 Button2 (Name) = btnRun Text : 실행 Button1 (Name) = btnExit Text : 종료
40
3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Visual Basic 2010 기본 문법 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Public Class Form1 Private Sub btnRun_Click(sender As Object, e As EventArgs) Handles btnRun.Click Dim i, j, s As Integer '정수형 변수 선언 For i = 1 To 10 For j = 1 To 10 s = s + 1 Next j Next i lblResult.Text = "i = " & i & ", j = " & j & ", s = " & s End Sub Private Sub btnExit_Click(sender As Object, e As EventArgs) Handles btnExit.Click Me.Close() End Class
41
Visual Basic 2010 기본 문법 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
프로젝트 저장 대화상자에서 이름을 “ForNext문2”으로, 위치를 “C:\VB예 제\chapter03”으로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된 다.
42
Visual Basic 2010 기본 문법 3.4 제어문 3) For Each ... Next 문
For .. Next 문과 달리 반복횟수를 가지지 않는다. 주로 배열이나 콜렉션(collection) 객체 멤버에 연속적으로 접근하기 위해 사용하며, 콜렉션내의 각 요소에 따라 블록안의 코드를 반복 실행한다. 사용 형식 For Each 요소변수명 in 배열|콜렉션명 [명령문들] [Exit For] Next [요소변수명]
43
Visual Basic 2010 기본 문법 3.4 제어문 For Each ... Next 문 사용 예
Dim Ary() As integer = {1, 2, 3, 4, 5, 6, 7,. 8, 9, 10} Dim Value As integer For Each Value In Ary Debug.WriteLine(Value) ‘Console.WriteLine(Value) 사용 가능 Next Value
44
Visual Basic 2010 기본 문법 3.4 제어문 4) While ... End While문
For .. Next 문과 같이 명령문들을 반복적으로 수행하는 명령문이며, 조건만큼 명령문을 실행하는 명령문이다. While ... End While문은 먼저 조건을 비교해 보고, 그 결과가 참이면 명령문을 실행한다. 즉, 조건식이 참인 동안 Loop를 돌며, 블록내의 코드를 반복 실행한다. 사용 형식 While 조건식 [명령문들] [Exit While] End While 사용 예 Dim iCount As Integer = ‘iCount 값을 비교 While iCount < 30 iCount = iCount ‘iCount 값을 1 증가 End While Debug.WriteLine(iCount) ‘OutPut windo에 30을 출력
Similar presentations