2015년 1월 30일 금요일

대입 연산자 ,산술 연산자 ,관계 연산자 , 논리 연산자, 비트 연산자,연결 연산자

산술 연산자는 더하기(+), 빼기(-), 곱하기(*), 나누기(/)를 하는 사칙연산자와
나머지(Mod),몫(\),지수승(%) 연산자가 있지요,

연산자   설명
*            곱하기 연산을 합니다.
/            나누기 연산을 합니다.
+            더하기 연산을 합니다.
-            빼기 연산을 합니다.
Mod       두 수를 나눈 나머지값을 반환합니다.
^            지수승을 구하는 데 사용합니다.
\           두 수를 나눈 정수 몫을 반환합니다.

관계 연산자는 두 피연산자를 조건에 따라 선택적으로 실행할 수 있도록 해줍니다.

관계 연산자                   설명
=                        같습니다.
<>                      같지 않습니다.
<                        보다 작습니다.
<=                       작거나 같습니다.
>                        보다 큽니다.
>=                       크거나 같습니다.
Like                    두 문자열을 비교합니다.
Is                        두 개체가 가리키는 변수가 동일한지 알아냅니다.

예제 소스
Private Sub Command1_Click()
Dim My_Ret1 As Boolean, My_Ret2 As Boolean
My_Ret1 = 5 <= 7
My_Ret2 = 5 >= 7
Label1.Caption = My_Ret1
Label2.Caption = My_Ret2
End Sub
Label1 에는 True 가 출력되고 Label2 에는 False 가 출력될것입니다.

Like 연산자는 [매개변수]를 이용하여 문자열을 비교할 수 있습니다.
매개변수                                           설명
?                             비교하는 문자열 중에 한 문자를 알지 못하는 경우에 '?' 로 대치하여
                               사용하면 True를 전달합니다.
[시작문자-끝문자]    비교 문자열 중에 한 문자를 [시작문자-끝문자]로 바꿔서 사용합니다.
                                만약 시작문자와 끝문자를 설정한것이 ASCII 문자 범위에 속하면 True를
                                전달합니다.
[!시작문자-끝문자]   비교 문자열 중에 한 문자를 [시작문자-끝문자]로 바꿔서 사용합니다.
                                만약 시작문자와 끝문자를 설정한것이 ASCII 문자범위에 속하지않으면
                                True를 전달합니다.
#                             비교문자열 중에 숫자를 모르는경우 '#' 으로 대치하여 사용하면 True
                               값을 전달합니다.

예제 소스
Private Sub Command1_Click()
Dim Ret1, Ret2, Ret3 As Boolean
Dim Ret4, Ret5, Ret6 As Boolean
Ret1 = "비주얼 베이직6" Like "비주얼 베이직6"
Ret2 = "비주얼 베이직6" Like "비주얼*"
Ret3 = "비주얼 베이직6" Like "비?얼 베이직6"
Ret4 = "비주얼 베이직6" Like "비주얼 베이직#"
Ret5 = "BASIC" Like "B[A-J]SIC"
Ret6 = "BASIC" Like "B[!A-J]SIC"
Label1.Caption = Ret1
Label2.Caption = Ret2
Label3.Caption = Ret3
Label4.Caption = Ret4
Label5.Caption = Ret5
Label6.Caption = Ret6
End Sub
결과 : Label6은 False 가 출력되고 나머지 모두는 True가 출력됩니다.
Label6이 False가 출력되는 이유는 A에서 J사이가 아닌 문자열만을 True로 전달하기
때문입니다.


[논리 연산자]
]
15. Not     논리 부정 연산입니다.
            값이 True 라면 False 로 변환하여 반환합니다. 그 반대도 가능합니다.
            예를들어 Not True 라면 False 가 반환되고 Not False 라면 True 가 반환됩니다.
16. And     논리곱 연산입니다. 비트연산을 합니다.
            수를 2진수로 변환한 뒤, 위와 아래의 수 모두 1 일 때만 1을 반환하여,
            다시 10진수로 변환하여 반환합니다.
                 00000010   -> 2
             And 00000011   -> 3
            --------------
                 00000010   -> 2

17. Or      논리합 연산입니다. 비트연산을 합니다.
            수를 2진수로 변환한 뒤, 위와 아래 둘 중 하나라도 1 일 때,
            1을 반환하여, 다시 10진수로 변환하여 반환합니다.
                 00000010   -> 2
             Or  00000001   -> 1
            --------------
                 00000011   -> 3
18. Xor     배타적 논리합 연산입니다. 비트연산을 합니다.
            수를 2진수로 변환한 뒤, 위와 아래 둘다 1 일 때는 0 을,
            나머지는 1을 반환하여, 다시 10진수로 변환하여 반환합니다.
                 00000101   -> 5
             Xor 00000011   -> 3
            --------------
                 00000110   -> 6

19. Eqv     동치(논리적 등가) 연산입니다. 두 식의 결과값이 같을 때만 True 를 반환합니다.
            예를들어 [ 1 < 2 Eqv 2 < 3 ] 라는 식의 경우에는 True 를 반환하지만,
            [ 1 < 2 Eqv 2 > 3 ] 의 경우에는 False 를 반환합니다. And 의 경우에는 두 식이
            모두 True 를 반환해야 True 를 반환하지만, 이것은 두 식이 True 이든 False 이든
            반환값이 일치하기만 한다면 True 를 반환합니다.
20. Imp     포함 관계 연산입니다. 앞의 식이 True 이고 뒤의 식이 False 일 때만 False 를 반환합니다.

예를들어 [ 3 > 6 Imp 4 < 8 ] 의 경우에는 [ 3 > 6 ] 은 False 이고
         [ 4 < 8 ] 은 True 이므로 반환값은 True 가 됩니다.
하지만 식이 [ 4 < 8 Imp 3 > 6 ] 이라면 [ 4 < 8 ] 은 True 이지만
            [ 3 > 6 ] 은 False 가 되어 반환값은 False 가 됩니다.

연결 연산자









댓글 없음:

댓글 쓰기