2 장 변수와 연산자

Post on 05-Jan-2016

87 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

2 장 변수와 연산자. 변수. 변수 (Variable) 어떤 알려지지 않은 값을 표현할 개체의 이름 컴퓨터 기억장소 셀에 대한 추상화로서 , 기억장소의 상대적 주소에 대한 이름  데이터 저장을 위한 장소로 사용 속성 이름 (name, identifier) 프로그램에서 개체를 구별하기 위한 문자열 값 (value) : 기억장소 셀의 내용 타입 (type) : 값의 범위 + 연산의 집합 주소 (address) 생존기간 , 수명 (lifetime) 영역 (scope). 변수의 정의. 선언 형식 - PowerPoint PPT Presentation

TRANSCRIPT

1

2 장 변수와 연산자

2

변수변수 (Variable) 어떤 알려지지 않은 값을 표현할 개체의 이름 컴퓨터 기억장소 셀에 대한 추상화로서 , 기억장소의 상대적

주소에 대한 이름 데이터 저장을 위한 장소로 사용

속성 이름 (name, identifier)

프로그램에서 개체를 구별하기 위한 문자열 값 (value) : 기억장소 셀의 내용 타입 (type) : 값의 범위 + 연산의 집합 주소 (address) 생존기간 , 수명 (lifetime) 영역 (scope)

3

변수의 정의선언 형식

변수명

{PublicⅠPrivateⅠDimⅠStatic} 변수명 As 자료형

255 자

영문자/ 한글 { 알파벳 /한글 , 숫자 , 밑줄 (_)}0

대소문자를 구별하지 않음예약어 사용 불가 (If, String, Private, Sub, End, Long, Beep 등 )짧고 간단하면서도 의미 있는 이름 ( 판독력과 작성력 향상 )

My-name, My_name, My name, _Name, @mail, 4you , Else, 이름 , k7

4

변수의 자료형

종류수치형 ( 정수형 , 실수형 )논리형 , 문자열형 , 가변형Byte, Currency, Decimal, Date, Object

5

변수의 자료형

수치형 (Integer, Long, Single, Double)

정수형 실수형 ( 부동소수점 )

Integer (2B) : -32,768 ~ 32,767 Single ( 단정도 , 4B) : -3.41038 ~ 3.41038

Long (4B) : -2,147,483,648 ~ 2,147,483,647 Double ( 배정도 , 8B) : -1.810308 ~ 1.810308

논리형 (Boolean) True/False 의 2 가지 값만 취급

문자열형 (String) 문자 데이터만 취급

가변길이 0 ~ 약 2 조자

Dim Name As String- Name 에 대입될 길이 + 10Byte

고정길이 1 ~ 약 65,400 자

Dim Name As Srting*15 - 15 문자 길이

Dim x As Boolean

6

변수의 자료형

가변형 (Variant) 디폴트 변수

묵시적으로 선언된 모든 변수

여러 유형의 데이터를 취급수치 , 문자 모두 취급

수행 속도나 기억장소 활용 측면에서는 비효율적숫자 : 16 바이트 할당

문자열 : 문자열 길이 + 22 바이트

선언

Dim address (As 자료형 생략 )Dim address As Variant ( 자료형

명시 )

7

변수 선언

자료를 저장할 적절한 크기의 기억공간 확보

선언 방법묵시적 (implicit) 선언

선언문 없이 , 변수를 문장 내에서 직접 사용

명시적 (explicit) 선언프로시저 /모듈 내에서 변수 선언문 사용

8

변수 선언

명시적 선언 요구모듈 내에 Option Explicit 기술 (1)

“ 사용할 모든 변수들은 선언을 필요로 한다” [ 도구 ]-[ 옵션 ]-[ 편집기 ] 탭 (2)

Option ExplicitPrivate a As IntegerPublic x As IntegerPrivate Sub Command1_Click() Dim a As Integer a = 10 Form1.Print aEnd SubPrivate Sub Command2_Click() Dim b As Integer Form1.Print a b = 5 Form1.Print b x = 3End Sub

9

변수 선언선언 형식

선언 예

{PublicⅠPrivateⅠDimⅠStatic} 변수명 As 자료형

Dim i As IntegerDim Score As DoubleDim Name As StringDim 주소 As VariantDim A As Boolean

Dim x, y As DoubleDim x As Double, y As Double

10

변수의 종류 (1)

통용 범위에 따른 종류선언된 변수가 사용 가능한 문장의 범위지역변수 , 모듈변수 , 전역변수

프로시저 안에서 선언해당 프로시저 안에서만 사용 가능초기화 : 숫자 0, 문자 “”

Dim Name As String

지역변수Option ExplicitPrivate a As IntegerPublic x As IntegerPrivate Sub Command1_Click() Dim a As Integer a = 10 Form1.Print aEnd SubPrivate Sub Command2_Click() Dim b As Integer Form1.Print a b = 5 Form1.Print b x = 3End Sub

11

변수의 종류 (1)

표준 모듈을 추가하여 선언 ( 일반 )-( 선언 ) 에서 선언폼 모듈에서 선언 변수가 선언된 폼의 이름을 붙여 사용프로그램의 모든 모듈간에 공통으로 사용 가능

Public Name As String

전역변수

모듈 수준에서 선언코드창의 ( 일반 )-( 선언 ) 에서 선언동일 모듈 내의 모든 프로시저에서 사용 가능

Private( 또는 Dim) Name As String

모듈변수Option ExplicitPrivate a As IntegerPublic x As IntegerPrivate Sub Command1_Click() Dim a As Integer a = 10 Form1.Print aEnd SubPrivate Sub Command2_Click() Dim b As Integer Form1.Print a b = 5 Form1.Print b x = 3End Sub

12

지역 /모듈 /전역 변수

지역 변수

프로시저 안에서 선언 프로시저 안에서만 사용 가능Dim Name As String

초기화 : 숫자 0, 문자 “”

모듈 변수모듈 수준에서 선언Private( 또는 Dim) Name As String

동일 모듈 내의 모든 프로시저에서 사용 가능

전역 변수

표준 모듈을 추가하여 일반 선언부에서 선언폼 모듈에서 선언 변수가 선언된 폼의 이름을 붙여 사용Public Name As String

프로그램의 모든 모듈간에 공통으로 사용 가능

13

지역 /모듈 /전역 변수

Option ExplicitPrivate a As IntegerPublic x As IntegerPrivate Sub Command1_Click() Dim a As Integer a = 10 Form1.Print aEnd SubPrivate Sub Command2_Click() Dim b As Integer Form1.Print a b = 5 Form1.Print b x = 3End Sub

Form1

Option Explicit

Private Sub Command3_Click() Form2.Print Form1.xEnd Sub

Form2

14

폼 /모듈 추가1. [ 프로젝트 ]-[ 폼 추가 ] / [ 모듈 추가 ]2. 프로젝트 탐색창에서 단축메뉴

15

변수의종류 (2)

수명에 따른 종류 변수를 위해 할당된 기억공간을 차지하고 있는 시간 동적변수 , 정적변수

모든 지역변수 : 프로시저에서 Dim 으로 선언된 변수할당 /회수 : 프로시저를 실행하는 매 순간 , 프로시저를 종료하는 순간재실행될 때 마다 변수의 값이 초기화된다

동적변수

키워드 Static 사용 : Static Name As String

할당 /회수 : 프로시저를 처음 실행하는 순간 , 프로그램 종료 순간

프로시저가 재실행되어도 이전 값을 유지

정적변수

16

동적 /정적 변수

Private Sub Command1_Click() Dim D As Integer Static S As Integer

D = D + 1 S = S + 1 Form1.Print D, SEnd Sub

17

상수

Constant실행 중에 변하지 않는 고정된 값을 표현

사용 형식

판독력과 수정력의 향상

{Public|Private} Const 상수명 [As 자료형 ] = 상수값

Private Const Pi As Double = 3.141592Const Radius = 30Const Str As String = “knou”

18

산술 /관계 연산자

구분 연산자 예

산술

+, -, *, / 2+7, 7-2, 2*7, 7/2

^ 2^3

\ ( 역슬래쉬 ) 7\2 ( 정수나누기 )

Mod 7 Mod 2

관계<, <=, >, >=

a<b, a<=ba>b, a>=b

결과값True False=, <> a=b, a<>b

19

논리 /연결 연산자구분 연산자 예

논리

And 3>5 And 4<6

결과값

TrueFalse

Or 3>5 Or 4<6

Xor 3>5 Xor 4<6

Not Not 3>5

Eqv 3>5 Eqv 4<6

Imp 3>5 Imp 4<6

연결& “ab” & “cd”, “a” & 123

+ “ab” + “cd”

X Y And Or Xor Eqv Imp

F F F F F T T

F T F T T F T

T F F T T F F

T T T T F T T

20

연결 연산자

Private Sub Form_Load() Form1.Show Print "ab" + "cd" Print "ab" & "cd"

Print 12 + 12 Print 12 & 12

Print "ab" + 12 Print "ab" & 12End Sub

abcdabcd

241212

Errorab12

21

연산자 우선순위

산술 연산자

연결 연산자

관계 연산자

논리 연산자낮음

높음 ^ -( 부정 ) *, /

\ Mod +, -

&

<, <=, >, >=, =, <>

Not And Or

Xor Eqv Imp

22

실습

top related