900 likes | 1.15k Views
학습목표. 제어구조를 익히자 모듈과 프로시저를 마스터하자 배열을 공부하자. 제어문. ■ 제어문. False. True. Grade >= 60. Print “Failed”. Print “Passed”. 제어구조를 익히자. ■ 제어구조. 교육 목표 If … . Then … . else 문 Select Case 문 For … Next 문 / For Each … Next 문 while … Wend 문 제어문 예제. IF 문. ■ IF 문. 단일 선택구조 IF
E N D
학습목표 • 제어구조를 익히자 • 모듈과 프로시저를 마스터하자 • 배열을 공부하자
제어문 ■ 제어문 False True Grade >= 60 Print “Failed” Print “Passed”
제어구조를 익히자 ■ 제어구조 • 교육 목표 • If …. Then …. else 문 • Select Case 문 • For … Next 문 / For Each … Next 문 • while … Wend문 • 제어문 예제
IF문 ■ IF문 • 단일 선택구조 IF • 이중 선택구조 IF • 다중 조건 구조 IF
단일 선택구조IF ■ 단일 선택구조IF • 형식 • If 조건 Then • 실행 문장 • End IF • 또는 • If 조건 Then 실행문
IF문 예제 ■ 예제 • Private Sub CommEx_Click() • n=InputBox(“숫자를 입력하세요”) • if n=0 then End • Print n • End Sub
IF문 문제 어떤 문자 하나를 InputBox로 입력 받아 “A”부터 “Z”사이가 아니라면 “에러”라고 출력하는 프로그램을 작성. ■ 문제 • Private SubCommEx_Click() • n=InputBox(“숫자를 입력하세요”) • If ( ) then • Print “에러” • ( ) • End Sub
이중 선택 구조 IF ■ 이중 선택구조 IF • 형식 • If 조건 Then • 참인 경우 실행문장 • Else • 거짓인 경우 실행문장 • End If
If…then…else문 ■ If…then…else문(1) Double-selection structure Single- selection structure True True False Grade >= 60 Grade >= 60 False Print “Passed” Print “Failed” Print “Passed”
If…then…else문 ■ If…then…else문(2) • Code • Single Selection Structure • Format • If ( 조건문 ) then • 명령문 • End If • If ( grade >= 60 ) then • lblGrade.caption=“Passed” ; • End If
If…then…else문 ■ If…then…else문(3) • Code • Double Selection Structure • Format • If (조건문) then • 명령문 1 • else • 명령문 2 • End If • If ( grade >= 60 ) then • lblGrade.caption=“Passed” ; • else • lblGrade.caption=“Failed” ; • End If
If…then…else문 ■ 예제 • Private SubCommEx_Click() • n=InputBox(“숫자를 입력하세요”) • If n>0 then • Print “양수” • else • Print “음수” • End if • End Sub
If…then…else문 문제 두수를 입력 받아 가장 큰 수를 출력하는 프로그램 작성. ■ 문제 • Private SubCommEx_Click() • A=InputBox(“숫자를 입력하세요”) • B=InputBox(“숫자를 입력하세요”) • If( ) Then • Print A • ( ) • Print B • ( ) • End Sub
다중 조건IF ■ 다중 조건IF • 형식 • If 조건1 Then • 실행문장1 • ElseIf 조건2 Then • 실행문장2 • Else • 실행문장3 • End If
다중 조건IF 예제 ■ 예제 • Private SubCommEx_Click() • n=InputBox(“숫자를 입력하세요”) • If n>0 then • Print “양수” • ElseIf n=0 Then • Print “영” • Else • Print “음수” • End if • End Sub
다중 조건IF 문제 ■ 문제1 하나의 문자를 입력받아 v, V 이면 비주얼 베이직, d, D 이면 델파이, j, J이면 자바 로 출력하는 프로그램을 작성하시오.
다중 조건IF 문제 ■ code를 완성하시오 • Private SubCommEx_Click() • n=InputBox(“숫자를 입력하세요”) • If ( ) then • Print “비주얼베이직” • ElseIf ( ) Then • Print “델파이” • Else • Print “자바 ” • End if • End Sub
Select Case문 ■ Select Case문 (1) Multiple- selection structure True strHakjum = “A” Score >= 90 False True strHakjum = “B” Score >= 80 False True strHakjum = “D” Score >= 60 False
Select Case문 ■ Select Case문 (2) • Format • Select Case 평가식 • Case 평가값 • 명령문 1 • Case 평가값 • 명령문 2 • Case 평가값 • 명령문 3 • Case Else • 명령문 n • End Select
Select Case문 ■ Select Case문 (3) • Coding • Select Case intScore • Case 90 • strHakjum = “A” • Case 80 • strHakjum = “B” • Case 70 • strHakjum = “C” • Case Else • strHakjum = “F” • End Select
Select Case문 예제 ■ 예제 1 Select CaseNum Case0 : Print “영” Case1 : Print “일” Case2 : Print “이” End Select
Select Case문 예제 ■ 예제 2 • Select Case aa • Case is < 12 • Msgbox “유년기” • Case 12,13 • Msgbox “사춘기” • Case 14 to 20 • Msgbox “청년기” • End Select
Select Case문 문제 하나의 문자를 입력받아 “A”나 “a”이면 “America”로“K”나 “k”이면 “Korea”로 그외 문자는 “에러”로 출력하는 프로그램을 작성하시오. ■ 문제1
Select Case문 문제 • Aa = inputbox(“문자를 입력하세요”) • Select Case aa • Case ( ) • Print “America” • Case ( ) • Print “Korea” • ( ) • Print “에러” • End Select
Select Case문 문제 국어, 영어, 수학점수를 InputBox로 입력받아 합계와 평균을 계산하여, 평균이 90점이상이면 “A”,평균이 80점이상 90점미만이면 “B”,평균이 70점이상 80점미만이면 “C”,평균이 60점이상 70점미만이면 “D”,평균이 60점미만이면 “F”로 학점을 출력하는 프로그램을 작성하시오 ■ 문제2
형식 For 변수 = 초기치 To 최종치 Step 증가치 처리문장 Next 변수 • For…Next문 ■ For…Next문(1) • 지정된 범위를 지정한 횟수만큼 반복 실행한다
For…Next문 ■ For…Next문 (2) count = 1 sum = 0 True count <= 10 sum = sum + count count++ False
For…Next문 ■ For…Next문 (3) • Format • 예 For 카운터 변수= 시작값To 종료값Step 증가치 명령문 [ Exit For ] 명령문 Next [카운터 변수] sum =0; For( i=0 To 10 Step 1 ) sum = sum + i Next
For…Next문 예제 • 예제) 1 부터 10 까지 출력하기 • For i = 1 to 10 Step 1 • Print i • Next i
For…Next문 문제 문제 1 ) 다음 아래와 같은 결과를 출력하시오.( For문, Do While .. Loop문, Do .. Loop While문, Do Until .. Loop문 사용) 500 400 300 200 100 문제 2 ) 다음 아래와 같은 결과를 출력하시오. 10 9 8 7 . . 1
For…Next문 문제 문제 3 ) 1 부터 100까지의 합을 출력하시오. ( For문, Do While .. Loop문) 문제 3) 1 부터 100까지에서 홀수의 합을 출력하시오. ( For문, Do While .. Loop문) 문제 4) 1 부터 100까지에서 7의 배수의 합을 출력하시오. ( For문, Do While .. Loop문)
For Each…Next문 문제 ■ For Each…Next문 • 기능 • 배열/컬렉션의 각 요소에 명령문 반복 실행 • Format For Each 구성요소In 그룹 명령문 [ Exit For ] 명령문 Next [구성요소]
조건을 검사한 후 참이면 반복문 실행한다. 형식 Do While 조건 처리문장 Loop • Do While…Loop문 ■ Do While…Loop문 • 예제) • i=1 • Do While i<=0 • Print i • i=i + 1 • Loop
일단 한번 문장들을 실행 시킨 뒤 조건을 검사한다. 형식 Do 처리문장 Loop While 조건 • Do Loop…While문 ■ Do Loop…While문 예제) i=1 Do Print i i=i + 1 Loop While i <= 10
조건이 거짓이면 반복하고 참이면 끝낸다. 형식 Do Until 조건 처리문장 Loop • Do Until…Loop문 ■ Do Until…Loop문 예제) i=1 Do Until i > 10 Print i I = i + 1 Loop
Do…Loop문 ■ Do…Loop문(1) Count++ True Counter <= 10 False
Do…Loop문 ■ Do…Loop문(2) • 예 • Format Do [{While | Until} 조건식] 명령문 [Exit Do] 명령문 Loop sum = 0 Do While boolEnd = False sum= isum + 3 If sum > 500 Then boolEnd = True End If Loop
Do…Loop문 ■ Do…Loop문(3) • 예 • Format Do 명령문 [Exit Do] 명령문 Loop [{While | Until} 조건식] Sum = 0 Do Sum = Sum + 1 If Sum = 100 Then Exit Do End If Loop Until boolEnd = True
While…Wend문 ■ While…Wend문(1) True Count++ name[count] > 0 False
While…Wend문 ■ While…Wend문(2) • Format While 조건식 명령문 Wend • 예 While i < 10 Sum = Sum + i i = i + 1 Wend
현재 블록을 강제로 빠져 나올 때 사용한다. For문 : Exit For에서 빠져 나옴 Do문 : Exit Do에서 빠져 나옴 • Exit문 ■ Exit문 예) a=10 Do While a <= 60 Print a if a=40 then Exit Do i=i+10 Loop
예제) Goto Line .... Line : 명령문 • Goto문 ■ Goto문 • 점프해서 지정된 곳에서 실행한다
제어문 예제 ■ 제어문 예제(1) • Form • Name 지정: frmControl • Caption 지정: 제어문 예제 1. 더블 클릭 (frmControl 입력) 2. 더블 클릭 (제어문 예제 입력)
제어문 예제 ■ 제어문 예제(2) • Control 배치 • Label • Label 1 • Label 2 • TextBox • Text 1 • CommandButton • Command 1 • Command 2 3. Control 배치
제어문 예제 ■ 제어문 예제(3) • Control 속성지정 • Label 속 성 Name Caption Appearance BorderStyle Control Label 1 Label 2 Label 1 lblResult 찾을 이름은 ? 1: 3D 0: 평면 0: 없음 1: 단일고정 속 성 Name Text Control Text 1 txtName
제어문 예제 ■ 제어문 예제(4) • Command Button 속 성 Name Caption Control Command 1 Command 2 cmdFind cmdExit 찾기(&F) 종료(&X) • Control 배치 및 속성 지정 완료 화면
제어문 예제 ■ 제어문 예제(5) • Code 작성 • 일반선언부 • 이름을 저장할 String형 배열 변수 선언 4. Code 작성
제어문 예제 ■ 제어문 예제(6) • Code 작성 • Form 개체의 Load Event 프로시저 5. Code 작성
제어문 예제 ■ 제어문 예제(7) • Code 작성 • [ 찾기 ] 버튼 개체의 Load Event 프로시저 6. Code 작성