학습목표 제어구조를 익히자 모듈과 프로시저를 마스터하자 배열을 공부하자. 학습목표 제어구조를 익히자 모듈과 프로시저를 마스터하자 배열을 공부하자.

Slides:



Advertisements
Similar presentations
Ⅰ. 연산자 Ⅱ. 제어 구조. 연산자 : 할당 연산자 - 사용자가 정의한 변수에 임의의 값을 저장하는 기능 strvar = strVar1+ “ Hello ”
Advertisements

Chapter 12. 배열. 배열  동일한 항목들이 동일한 크기로 연속적으로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는 자료 구조.
1 08 배열. 한국대학교 객체지향연구소 2 C 로 배우는 프로그래밍 기초 2 nd Edition 배열  동일한 자료유형의 여러 변수를 일괄 선언  연속적인 항목들이 동일한 크기로 메모리에 저장되는 구조  동일한 자료 유형이 여러 개 필요한 경우에 이용할 수 있는.
1. 2 차원 배열  배열은 동일한 데이터 유형으로 여러 개의 변수를 사용할 경우 같은 이 름으로 지정하여 간편하게 사용할 수 있도록 하는 것으로서 앞에서 1 차원 배열을 공부하였습니다.  2 차원 배열은 바둑판을 생각하면 되며, 1 차원 배열에서 사용하는 첨자를 2.
4장 배열과 함수 한빛미디어(주).
VISUAL BASIC 양 계 탁.
데이터형, 변수, 연산자 컴퓨터 응용 및 실습 I.
ㅎㅎ 구조체 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스 구조체 배열.
ㅎㅎ 구조체 C++ 프로그래밍 기초 : 객체지향의 시작 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스
클래스 class, 객체 object 생성자 constructor 접근 access 제어 이벤트 event 처리.
제 9 장 구조체와 공용체.
비주얼 베이직 프로그래밍 한성대학교 정보전산학부 강 승 식.
컴퓨터 프로그래밍 기초 [Final] 기말고사
프로시저 와 인수전달 컴퓨터응용 및 실습 I.
7장 배열 ②.
5장 배열 작성자 : 변재현.
파일(File) 다루기 컴퓨터응용 및 실습 I.
어서와 Java는 처음이지! 제3장선택과 반복.
5장. 참조 타입.
제2장 기본 문법 (2) 주제 : 연산자, 조건문, 반복문 수원과학대학 컴퓨터정보과.
Visual Basic 함수.
마우스(Mouse) 다루기 컴퓨터응용 및 실습 I.
학습목표 변수 비주얼 베이직 자료형 변수 선언하기. 학습목표 변수 비주얼 베이직 자료형 변수 선언하기.
예제로 배우는 Visual Basic 성적처리기로 익히는 체크박스와 옵션버튼
8장 함수 함수의 필요성 라이브러리 함수와 사용자 정의 함수 함수의 정의, 원형, 호출 배열을 함수 인자로 전달 재귀호출.
고급 선택 제어문과 반복문 Chapter 9 C에서의 다중 선택 제어문 선 검사 반복 구조와 for 문
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
Visual Basic 조건문.
Part 07 제어 구조 ©우균, 창병모 © 우균, 창병모.
예제로 배우는 Visual Basic 구구단 작성기로 익히는 반복문
KIM HEESANG PL/SQL 2 KIM HEESANG
3 장 Visual Basic 2010 기본 문법 3.4 제어문 1) 조건문 2) 반복문 3) 기타 제어문
C#.
MATLAB
JA A V W. 03.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
어서와 C언어는 처음이지 제14장.
인터넷응용프로그래밍 JavaScript(Intro).
3장 상수 변수 기본 자료형 키워드와 식별자 상수와 변수 기본 자료형 형변환 자료형의 재정의.
Java의 정석 제 5 장 배 열 Java 정석 남궁성 강의 의
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
연산자 (Operator).
프로그래밍 원리 Chapter 05 자바스크립트 기초 신한대학교 IT융합공학부 박 호 균.
에어 조건문.
2장. 변수와 타입.
Choi Seong Yun 컴퓨터 프로그래밍 기초 #06 : 반복문 Choi Seong Yun
컴퓨터 프로그래밍 기초 - 8th : 함수와 변수 / 배열 -
5장 선택제어문 if 선택문 switch-case 선택문 다양한 프로그램 작성 조건 연산자.
5강. 배열 배열이란? 배열의 문법 변수와 같이 이해하는 배열의 메모리 구조의 이해 레퍼런스의 이해 다차원 배열
17장. 제어문과 내장 함수 제어문 내장 함수 제어문 내장 함수.
함수(Function) ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문
[ 단원 04 ] 반복과 배열.
제 6 장 함수(functions).
클래스 : 기능 CHAPTER 7 Section 1 생성자(Constructor)
Flow Diagram IV While.
7주차: Functions and Arrays
C++ 프로그래밍 기초 √ 원리를 알면 IT가 맛있다 3장. 연산자.
메뉴(Menu) 컴퓨터응용 및 실습 I.
Chapter 10 데이터 검색1.
함수, 모듈.
11장 배열 1. 배열이란? 1.1 배열의 개요 1.2 배열의 선언과 사용.
컴퓨터 프로그래밍 기초 - 9th : 배열 / 포인터 -
16장. 변수, 연산자, 사용자 정의 함수 변수 배열과 객체 연산자 함수.
9 브라우저 객체 모델.
8장 선택 논리 II 1. 논리연산자 1.1 논리연산자 : AND (&&) 1.2 논리연산자 : OR (||)
어서와 C언어는 처음이지 제21장.
개정판 누구나 즐기는 C언어 콘서트 제13장 동적 메모리 출처: pixabay.
그래픽 컨트롤 (Graphic Control)
7 생성자 함수.
6 객체.
Presentation transcript:

학습목표 제어구조를 익히자 모듈과 프로시저를 마스터하자 배열을 공부하자

제어문 ■ 제어문 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 실행문

Private Sub CommEx_Click() n=InputBox(“숫자를 입력하세요”) if n=0 then End ■ 예제 Private Sub CommEx_Click() n=InputBox(“숫자를 입력하세요”) if n=0 then End Print n End Sub

어떤 문자 하나를 InputBox로 입력 받아 “A”부터 “Z”사이가 아니라면 “에러”라고 출력하는 프로그램을 작성. IF문 문제 ■ 문제 어떤 문자 하나를 InputBox로 입력 받아 “A”부터 “Z”사이가 아니라면 “에러”라고 출력하는 프로그램을 작성. Private Sub CommEx_Click() n=InputBox(“숫자를 입력하세요”) If ( ) then Print “에러” ( ) End Sub

■ 이중 선택구조 IF 이중 선택 구조 IF 형식 If 조건 Then 참인 경우 실행문장 Else 거짓인 경우 실행문장 End If

■ If…then…else문(1) If…then…else문 Double-selection structure Single- selection structure Double-selection structure True True False Grade >= 60 Grade >= 60 False Print “Passed” Print “Failed” Print “Passed”

■ If…then…else문(2) If…then…else문 Single Selection Structure Format 명령문 End If Code If ( grade >= 60 ) then lblGrade.caption=“Passed” ; End If

■ If…then…else문(3) If…then…else문 Double Selection Structure Format 명령문 1 else 명령문 2 End If Code If ( grade >= 60 ) then lblGrade.caption=“Passed” ; else lblGrade.caption=“Failed” ; End If

■ 예제 If…then…else문 Private Sub CommEx_Click() n=InputBox(“숫자를 입력하세요”) If n>0 then Print “양수” else Print “음수” End if End Sub

두수를 입력 받아 가장 큰 수를 출력하는 프로그램 작성. If…then…else문 문제 ■ 문제 두수를 입력 받아 가장 큰 수를 출력하는 프로그램 작성. Private Sub CommEx_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 Sub CommEx_Click() n=InputBox(“숫자를 입력하세요”) If n>0 then Print “양수” ElseIf n=0 Then Print “영” Else Print “음수” End if End Sub

■ 문제1 다중 조건IF 문제 하나의 문자를 입력받아 v, V 이면 비주얼 베이직, d, D 이면 델파이, j, J이면 자바 로 출력하는 프로그램을 작성하시오.

■ code를 완성하시오 다중 조건IF 문제 Private Sub CommEx_Click() n=InputBox(“숫자를 입력하세요”) If ( ) then Print “비주얼베이직” ElseIf ( ) Then Print “델파이” Else Print “자바 ” End if End Sub

■ Select Case문 (1) Select Case문 Multiple- selection structure True strHakjum = “A” Score >= 90 False True strHakjum = “B” Score >= 80 False True strHakjum = “D” Score >= 60 False

■ Select Case문 (2) Select Case문 Format Select Case 평가식 Case 평가값 명령문 1 명령문 2 명령문 3 Case Else 명령문 n End Select

■ Select Case문 (3) Select Case문 Coding Select Case intScore Case 90 strHakjum = “A” Case 80 strHakjum = “B” Case 70 strHakjum = “C” Case Else strHakjum = “F” End Select

■ 예제 1 Select Case문 예제 Select Case Num Case 0 : Print “영” End Select

■ 예제 2 Select Case문 예제 Select Case aa Case is < 12 Msgbox “유년기” Case 14 to 20 Msgbox “청년기” End Select

Select Case문 문제 ■ 문제1 하나의 문자를 입력받아 “A”나 “a”이면 “America”로 “K”나 “k”이면 “Korea”로 그외 문자는 “에러”로 출력하는 프로그램을 작성하시오.

Select Case문 문제 Aa = inputbox(“문자를 입력하세요”) Select Case aa Case ( ) Print “America” Print “Korea” ( ) Print “에러” End Select

Select Case문 문제 ■ 문제2 국어, 영어, 수학점수를 InputBox로 입력받아 합계와 평균을 계산하여, 평균이 90점이상이면 “A”, 평균이 80점이상 90점미만이면 “B”, 평균이 70점이상 80점미만이면 “C”, 평균이 60점이상 70점미만이면 “D”, 평균이 60점미만이면 “F”로 학점을 출력하는 프로그램을 작성하시오

■ For…Next문(1) For…Next문 지정된 범위를 지정한 횟수만큼 반복 실행한다 형식 For 변수 = 초기치 To 최종치 Step 증가치 처리문장 Next 변수

■ For…Next문 (2) For…Next문 True count <= 10 False count = 1 sum = 0 sum = sum + count count++ False

For 카운터 변수 = 시작값 To 종료값 Step 증가치 명령문 [ Exit For ] Next [카운터 변수] 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

문제 3 ) 1 부터 100까지의 합을 출력하시오. ( For문, Do While .. Loop문) 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 구성요소 In 그룹 명령문 [ Exit For ] Next [구성요소] 기능 배열/컬렉션의 각 요소에 명령문 반복 실행 Format For Each 구성요소 In 그룹 명령문 [ Exit For ] Next [구성요소]

■ Do While…Loop문 Do While…Loop문 조건을 검사한 후 참이면 반복문 실행한다. 형식 Do While 조건 조건을 검사한 후 참이면 반복문 실행한다. 형식 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문(2) Do…Loop문 Format Do [{While | Until} 조건식] 명령문 [Exit Do] 예 sum = 0 Do While boolEnd = False sum= isum + 3 If sum > 500 Then boolEnd = True End If Loop

■ Do…Loop문(3) Do…Loop문 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문(2) While…Wend문 Format While 조건식 명령문 Wend 예 While i < 10 Sum = Sum + i i = i + 1 Wend

■ Exit문 예) a=10 Do While a <= 60 Print a if a=40 then Exit Do 현재 블록을 강제로 빠져 나올 때 사용한다. For문 : Exit For에서 빠져 나옴 Do문 : Exit Do에서 빠져 나옴 예) a=10 Do While a <= 60 Print a if a=40 then Exit Do i=i+10 Loop

Goto문 ■ Goto문 점프해서 지정된 곳에서 실행한다 예제) Goto Line .... Line : 명령문

■ 제어문 예제(1) 제어문 예제 Form Name 지정: frmControl Caption 지정: 제어문 예제 1. 더블 클릭 (frmControl 입력) 2. 더블 클릭 (제어문 예제 입력)

■ 제어문 예제(2) 제어문 예제 3. Control 배치 Control 배치 Label Label 1 Label 2 TextBox Text 1 CommandButton Command 1 Command 2

■ 제어문 예제(3) 제어문 예제 Control 속성지정 속 성 Control Name Caption Appearance Label 속 성 Control Name Caption Appearance BorderStyle Label 1 Label 2 Label 1 lblResult 찾을 이름은 ? 1: 3D 0: 평면 0: 없음 1: 단일고정 속 성 Control Name Text Text 1 txtName

■ 제어문 예제(4) Name Caption 제어문 예제 속 성 Control Command 1 Command 2 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 작성

제어문 예제 ■ 제어문 예제(8) Code 작성 [ 종료 ] 버튼 개체의 Click Event 프로시저 7. Code 작성

제어문 예제 ■ 제어문 예제(9) 실행 8. “늘푸름” 입력 9. 클릭

모듈과 프로시저를 마스터하자 프로시저 사용이유 서브 프로시저 함수 프로시저 값에 의한 호출과 참조에 의한 호출 정적변수와 정적 프로시저 기타 매개변수

■ 프로시저 사용이유 프로시저 사용이유 프로시저는 프로그램을 작은 논리단위로 나누어 관리가 용이하다. 다른 프로그램에서도 사용이 가능하다.

단위프로그램으로 작성해서 필요할 때마다 사용한다. 객체에 대한 이벤트가 발생했을 때 호출된다. 서브 프로시저 ■ 서브 프로시저(1) 이벤트에 대해서 실행되는 코드의 블록이다. 단위프로그램으로 작성해서 필요할 때마다 사용한다. 객체에 대한 이벤트가 발생했을 때 호출된다. 예제) Private Sub am_Click() Print “이벤트” End Sub

■ 서브 프로시저(2) 서브 프로시저 프로시저 내에 놓여진 코드를 실행할 뿐 어떤 값도 반환하지 않는다. 호출 문장이 필요하다 형식 Private Sub 프로시저이름(매개변수) 처리문장 End Sub

서브 프로시저 예제 예제) Private Sub Cmd_Click( ) My 3 ‘ Call My(3)과 같다 End Sub Public Sub My(Cnt As Integer) For i=1 to Cnt Print “안녕하세요” Next i End Sub

■ 함수 프로시저 함수 프로시저 프로시저 이름을 통해 하나의 값을 반환한다. 함수 프로시저는 변수처럼 자신의 자료형을 가진다.(기본형은 Variant형이다) 형식 Function 프로시저이름(매개변수) As 반환형 처리문장 변수 = 반환값 End Function

함수 프로시저 예제 예제) Private Sub Cmd_Click( ) Dim K As Integer K=My(10) Print K End Sub Public Function My(Su As Integer) As Integer My=Su*Su End Function

함수 프로시저 예제 함수 프로시저 예제2) Private Sub Cmd_Click() Dim k As Integer k=My(10) Select Case k Case -1 : Print “음수” Case 0 : Print “영” Case 1 : Print “양수” End Select End Sub Public Function My(su As Integer) As Integer If su=0 then ( ) =0 elseif su > 0 then ( ) =1 elseif su < 0 then ( ) =-1 EndIf End ( )

(문제1) 1부터 입력받은 수까지의 합을 계산하는 프로그램을 완성시키시오. 함수 프로시저 문제 (문제1) 1부터 입력받은 수까지의 합을 계산하는 프로그램을 완성시키시오. Private Sub Command1_Click( ) Dim k As Integer k=Inputbox(“수치를 입력”) Call My(k) End Sub

(문제2) 1부터 입력받은 수까지의 합을 계산하는 프로그램을 완성시키시오. 함수 프로시저 문제 (문제2) 1부터 입력받은 수까지의 합을 계산하는 프로그램을 완성시키시오. Private Sub Command1_Click( ) Dim k As Integer Dim m As Integer k=Inputbox(“수치를 입력”) m=My(k) Print m End Sub

■ 값에 의한 호출과 참조에 의한 호출 값에 의한 호출과 참조에 의한 호출 Call By Reference : 호출하는 측에서 프로시저에게 데이터를 넘겨줄때, 데이터의 주소가 넘어간다. : 프로시저 작성시 매개변수 앞에 ByRef키워드를 사용한다. : 형식 Private Sub Sam(ByRef k As integer) ...... End Sub

값에 의한 호출과 참조에 의한 호출 Call By Value : 호출하는 프로시저에게 데이터를 넘겨 줄때 데이터 값이 넘어간다. : 프로시저 작성시 매개변수 앞에 ByVal 키워드를 사용한다. : 형식 Private Sub(ByVal k As Integer) ..... End Sub

(문제 1) 다음 프로그램의 결과 값을 작성하시오. 값에 의한 호출과 참조에 의한 호출 문제 (문제 1) 다음 프로그램의 결과 값을 작성하시오. Dim k As Integer Private Sub Form_Load() k=20 End Sub Private Sub Cmd_Click() Call My(k) Print k Public Sub My(ByRef D As Integer) Print D D=0 End Sub

(문제2) 다음 프로그램의 결과 값을 작성하시오. 값에 의한 호출과 참조에 의한 호출 문제 (문제2) 다음 프로그램의 결과 값을 작성하시오. Dim K As Integer Private Sub Form_Load() K=20 End Sub Private Sub Cmd_Click() Call My(K) Public Sub My(ByVal D As Integer) Print D D=0 End Sub

■ 정적 변수와 정적 프로시저 정적 변수와 정적 프로시저 Static 예약어 정적변수나 정적 프로시저를 선언할 때 사용한다. 지역변수의 값을 유지하는데 사용

정적 변수와 정적 프로시저 ■ 정적 변수 블록이 시작되기 전에 이미 메모리에 생성되었다가 블록이 끝나도 그대로 그 값을 보존하며 메모리에 남아있다 Sub Main_Proc() Call Total(1) Call Total(2) End Sub Sub Total(Num) Static Sum Sum=Sum+Num Print Sum End Sub

■ 정적 프로시저 정적 변수와 정적 프로시저 프로시저 안에 선언된 모든 변수를 정적변수로 생성할 때 사용한다. 예제) Static Sub Total(Number) Sum Sum = Sum + Number Print Sum End Sub

■ 기타 매개변수 기타 매개변수 선택적인 매개변수의 이름 앞에는 예약어 Optional을 추가한다. 선택적인 매개변수에 대해서는 가변형인 Variant형만이 허용된다. 매개변수 리스트는 마지막에 선언한다.

기타 매개변수 예제 예제) A_Pro “안녕하세요”, “홍길동씨” A_Pro “안녕하세요” Sub A_Pro(X As String, Optional y As Variant) If IsMissing (y) Then Print x & “아무개씨” Else Print x & y End If End Sub

기타 매개변수 예제 예제) A_Pro “안녕하세요”, “홍길동씨” A_Pro “안녕하세요” Sub A_Pro(x As String, Optional y As Variant =“아무개씨” ) Print x & y End Sub

배열을 공부하자 배열의 기초 1차원 배열 다차원 배열 동적 배열 컨트롤 배열

배열의 기초 ■ 배열의 기초 배열(Array) : 크기와 자료형이 같은 변수의 집합입니다. 여러 개의 변수를 모아서 처리할 때 사용한다. 요소(Element) : 배열을 구성하는 각각의 값이다. 첨자(Subscript) : 요소를 구분하기 위해 사용하는 번호이다. 예제) Dim K(5) As Integer A(0) A(1) A(2) A(3) A(4) A(5)

■ 1차원 배열 1차원 배열 첨자가 하나인 배열 (예제) Dim a(5) As Integer 배열요소의 하한 값은 0으로 시작한다. Option Base (예제) Option Base 1 Dim A(5) As Integer A(1) A(2) A(3) A(4) A(5)

1차원 배열 배열의 범위를 변경 Dim A(10 To 14) As Integer A(10) A(11) A(12) A(13) A(14)

(문제1) 다음 프로그램의 결과 값을 작성하시오. 1차원 배열문제 (문제1) 다음 프로그램의 결과 값을 작성하시오. Private Sub Form_Load() Dim a(1 to 26) As String*1 Dim i As integer Dim j As integer j=65 For i= 1 to 26 a(i) = Chr(j) j=j+1 Next i For i=1 to 26 Print a(i) Next i End Sub

1차원 배열 문제 (문제2) 다음 프로그램의 결과를 작성하시오. Private Sub Form_Load() Dim Code(10 to 20) As Integer For i=10 To 20 Step 3 Code(i) = 100 Next i Print Code(i) End Sub

■ 다차원 배열 다차원 배열 첨자가 2개 이상인 배열 (예제) Dim A(2,3) As Integer A(0,0) A(0,1)

(문제1) 다음 프로그램의 결과값을 작성하시오 다차원 배열 문제 (문제1) 다음 프로그램의 결과값을 작성하시오 Private Sub Form_Load() Dim a(1,2) As Integer a(0,0)=10 : a(0,1) = 10 : a(0,2) = 10 a(1,0)=20 : a(1,1) = 20 : a(1,2) = 20 For i = 0 To 1 For j = 0 To 2 Print a(i,j) Next j Next i End Sub

Print a(i,0),a(i,1),a(i,2),a(i,3),a(i,4) 다차원 배열 문제 (문제2) 다음 프로그램 결과값을 작성하시오. Private Sub Form_Load() Dim a(1 To 3, 4) a(1,0)=“Sung” : a(1,1) =90 a(1,2)=80 : a(2,0)=“Kim” a(2,1)=100 : a(2,2)=90 a(3,0)=“lee” : a(3,1) =40 a(3,2)=50 For i= 1 to 3 a(i,3)=a(i,1)+a(i,2) Next i For i= 1 to 3 suk=1 For j= 1 to 3 If a(j,3)>a(i,3) Then suk=suk+1 End If Next j a(i,4)=suk Next i For i= 1 to 3 Print a(i,0),a(i,1),a(i,2),a(i,3),a(i,4) End Sub

■ 동적 배열 동적 배열 프로그램 실행 중에 크기를 바꿀수 있는 배열이다. ReDim 을 사용해서 기존의 배열을 다시 선언한다. ReDim은 Dim과 달리 프로시저 안에서만 사용할 수 있다. 예제) Dim Mat() As Integer Sub A_Proc() ReDim Mat(3,4) ‘ 배열의 크기는4*5 .... End Sub

동적 배열 동적배열의 데이터 보존 ReDim문을 사용하면 각 형에 대해 초기값을 갖는다. 가변형 => Empty 숫자 => 0 문자열형 => 원소값이 0인 문자열 Preserve예약어를 사용해 값을 보존 첨자의 범위 최소값 : LBound(배열이름, 차수) 최대값 : UBound(배열이름, 차수)

(문제1) 다음 프로그램의 결과값을 작성하시오. 동적 배열 문제 (문제1) 다음 프로그램의 결과값을 작성하시오. For i=1 To 3 Print b(i) Next i End Sub Option Base 1 Private Sub Form_Load() Dim a() As Integer Dim b() As Integer ReDim a(3) ReDim b(3) For i=1 To 3 a(i)=i Print a(i) Next i

동적 배열 문제 For i=1 To 3 Print b(i) Next i End Sub Option Base 1 Private Sub Form_Load() Dim a(3) As Integer Dim b(3) As Integer For i=1 To 3 a(i)=i Print a(i) Next i b=a For i=1 To 3 Print b(i) Next i End Sub

동적 배열 문제 Option Base 1 Private Sub From_Click() Dim a(2 To 5) As Integer For i= Lbound(a) To Ubound(a) a(i)=i Print a(i) Next i End Sub

동적 배열 문제 Private Sub Form_click() Dim a(2 To 3, 1 To 3) As Integer Print LBound(a,1) Print LBound(a,2) Print UBound(a,1) Print UBound(a,2) End Sub

■ 컨트롤 배열 컨트로 배열 컨트롤의 모음을 하나의 집합으로 처리할 때 사용한다. 이벤트 프로시저 하나를 공유하며, Index를 매개변수로 구분한다

컨트로 배열 예제 프로그램 ■ 컨트롤 배열 예제 프로그램 실행

컨트로 배열 예제 프로그램 Private Sub optArray_Click(Index As Integer) '컨트롤 배열 첨자값 출력 Cls Print Print "Index = "; Index '선택된 모양으로 바꿈 Select Case Index Case 0 shpShape.Shape = vbShapeCircle Case 1 shpShape.Shape = vbShapeRectangle Case 2 shpShape.Shape = vbShapeRoundedRectangle End Select End Sub