창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판 (1/0)
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


LIST ALL
Posted by 박종훈2006-10-15 08:51:50, Hit : 6033
효과적인 조건문을 위한 논리연산자
Homepage : http://www.canxan.com/~qnrdlqkrwhdgns
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=open_lec&no=100




효과적인 조건문 사용을 위한 논리연산자

※이 내용을 숙지하시면, 조건문사용시 매우 편리합니다.
※간단히 어려운내용없이 설명했습니다.



논리연산자의 종류
   연산자의 종류 : AND, OR, NOT
   창조[우리어] 에서 쓰는표현 : 그리고, 또는, 부정

논리연산자 세부 설명

그리고 ☞ 두 식이 모두 만족할때
 이 논리연산자는, 다른 프로그래밍언어에서는 AND와 같은겁니다.
 역활은, 두 식이 모두 참일경우에만, 실행하게하도록 하는 겁니다.
 아래의 예를 통해 알아보도록 하겠습니다.

만일((a = 30) 그리고 (b = 40)) {
    문자창보여("이 조건은 두 식이 참일때만 실행됩니다.");
}

(조건문의 조건부만 설명하겠습니다.)

(a = 30) 그리고 (b = 40)
'그리고' 라는 연산자 보이시죠?
(a = 30)와 (b = 40)이 모두 참일때, 이 조건문은 실행됩니다.




또는 ☞ 두 식중 하나가 만족할때
 이 논리연산자는, 다른 프로그래밍언어에서는 OR과 같은겁니다.
 역활은 두 식중 하나가 만족할때 실행하게하도록 하는 겁니다. [두 식이 모두 참이어도 실행]
 아래의 예를 통해 알아보도록 하겠습니다.

만일((a = 30) 또는 (b = 40)) {
    문자창보여("이 조건은 두 식중 하나가 참일때만 실행됩니다.");
}

(조건문의 조건부만 설명하겠습니다.)

(a = 30) 또는 (b = 40)
'또는' 이라는 연산자 보이시죠?
(a = 30)와 (b = 40)이 중 하나라도 참일때, 이 조건문은 실행됩니다.



부정 ☞ 식의 결과를 반대로 할때
 이 논리연산자는, 다른 프로그래밍언어에서는 NOT와 같은겁니다.
 역활은 식의 결과를 거꾸로 합니다. [참일 경우 거짓으로 / 거짓을 경우 참으로]
 아래의 예를 통해 알아보도록 하겠습니다.

만일(부정 (체크박스0.표시)) {
    문자창보여("이 조건은 체크박스0의 체크가 없을때만 실행됩니다.");
}

(조건문의 조건부만 설명하겠습니다.)

부정 (체크박스0.표시)
'부정' 이라는 연산자 보이시죠?
부정이라는 연산자는, 식의 결과를 거꾸로 합니다. [진리형의 경우자주 사용됩니다.]


논리연산자 핵심정리

'그리고' 연산자 ☞ 두 식이 모두 만족할때 참을 반환 [둘중 하나라도 거짓이면 거짓을 반환]
'또는' 연산자 ☞ 두 식중 하나라도 만족하면 참 반환
                       이때, 두 식이 모두 만족해도, 참을 반환 [단, 두 식이 모두 거짓이면 거짓을 반환]
'부정' 연산자 ☞ 식의 결과를 거꾸로 함.[식의 결과를 부정함.]
                       부정 (거짓) 을 하면, 참을 반환.
                       부정 (참) 을 하면, 거짓을 반환.



comment.
만일, 논리연산자를 만만하게 보고, 지나치신다면 나중에 조건문 사용할때 무지 불편합니다.
아래의 경우를 보면서, 논리연산자의 중요성을 알아볼까요?

a 혹은 b 가 참일경우 조건을 실행하게 된다면..
[이때, 논리연산자 사용안한다고 가정합니다.]

a, b 모두 참일때
a 가 참이고, b가 거짓일때
a 가 거짓이고, b 가 참일때

이렇게.. 3가지의 경우의 수를 생각하시면서 조건문을 만드셔야 합니다.
어떤가요? 무지 불편하죠? [더 많은 조건이 있다면, 그만큼 더 불편하게 되는거죠..]

그런데, 우리는 이 강좌에서 논리 연산자를 배웠음으로..
위와 같은 고생은 안하고 그냥 간단히, 논리연산자만 사용하면 고생이 준다는 거죠^^
아셨나요? 논리연산자의 중요성을~



지상현   2006-10-24 AM 12:01:05  
조금만 더 보태겠습니다 ^^

부정 (어쩌고 그리고 저쩌고) => 부정 어쩌고 또는 부정저쩌고
부정 (어쩌고 또는 저쩌고) => 부정 어쩌고 그리고 부정 저쩌고
지상현   2006-10-24 AM 12:04:17  
혹시, 집합을 배우신 분들은 이것을 집합으로 이해하시면 더 간단합니다.
각각의 조건들을 참으로 뭉친 진리 집합으로 보고, 진리 집합에 원소가 하나 이상 있을 때를 참, 공집합일 때를 거짓으로 본다면

그리고 => 교집합
또는 => 합집합
부정 => 여집합

이것을 전개하는 이론도 집합이나 명제와 똑같습니다.
위 댓글도 아마 드모르간의 법칙인가 뭔가였을 겁니다. -┏
지상현   2006-10-24 AM 12:11:36  
어, 하나 더 달게 되는군요(....)
다른 컴파일러에서는 최적화로 자동으로 일어나는 일이지만, 창조에서는 아닌 것이 있습니다.

// 이러쿵과 저러쿵은 명령어 (진리함수)
만일 ((이러쿵()) 또는 (저러쿵()))
    어쩌고...

이런 식이 있을 때, 먼저 이러쿵과 저러쿵을 실행해본 뒤 둘 중 하나만 참이어도 어쩌고 부분이 실행됩니다.

그런데, 이 식에서는 이러쿵이 참이라면 그 뒤는 볼 것도 없이 식 전체가 참이 됩니다.
그래서 여러 컴파일러들은 또는 으로 연결된 식이 있을 때 하나만 참이면 뒤 명령어는 아예 실행도 하지 않습니다.
저러쿵도 반드시 실행되어야 한다면 문제가 발생하겠죠?

창조에서는 그런 최적화가 보이지 않지만, 반대로
이러쿵만 참이면 저러쿵은 실행 안해봐도 될 때는 저런 문장을 사용하면 저러쿵도 어쩔 수 없이 실행됩니다.
따라서, 이런 경우에는 또는 으로 연결하는 것 보다는 만일을 겹쳐서 쓰는게 나을 것이다~ 라는 이야기 입니다.;;;
박종훈   2006-10-24 PM 9:27:34  
아~ 그렇군요^^
좋은 추가 설명 감사합니다^^..
LIST ALL               GO TO THE TOP


N
   Subject
Posted by
Date
H
94
   환경파일로 파워유저되어보자![개정판] [설명] 1 -- 완성
박종훈 2007/01/02  6109
93
   ㅎ사용자함수 알아보기! [2]
박종훈 2006/12/24  5394
92
   '변수'와의 인터뷰 -_-; [5]
박종훈 2006/12/24  5355
91
   창조 첫 시작시 명령어 익혀보자~ [4]
박종훈 2006/12/23  8038
90
   쉽고 빠르게 프로그래밍 하기 위한 방법들
장규형 2006/11/22  5394

   효과적인 조건문을 위한 논리연산자 [4]
박종훈 2006/10/15  6033
88
   [창조x] 수줍은 pda프로그래밍시작
이진백 2006/09/11  5790
87
   API사용을 위한 창조 구조체다루기 [M_S 0608190928] [3]
박종훈 2006/08/18  5547
86
   창조 시작단계 문법배워볼까? [M 0608181240] [8]
박종훈 2006/08/17  6506
85
   한글이 입력되기까지 [4]
지상현 2006/07/29  6459
84
   스크린세이버에대한 분석 [5]
박재성[날개달기] 2006/03/08  5281
83
   몇가지 유용한 정보 모음 [5]
최재일 2006/01/13  9348
82
   환경문 강좌..^^; [문자형 자료] [8]
qkrwhdgns 2006/01/10  5636
81
     환경문 강좌..^^; [실수형 자료] [1]
qkrwhdgns 2006/01/11  5244
80
       환경문 강좌..^^; [진리형 자료] [1]
qkrwhdgns 2006/01/11  5017
79
         환경문 강좌..^^; [예제 소스]
qkrwhdgns 2006/01/11  5279
78
   재미있는 포인터 강좌 -1- [2]
지상현 2005/10/12  6274
77
   #1 비트 연산이란? - 진수 표기법
지상현 2005/10/09  11386
76
   [요청강좌#14] DLL제작 강의 (미완성) [4]
이진백 2005/10/09  5604
75
     [re] [요청강좌#14] DLL제작 강의 (미완성) [2]
지상현 2005/10/09  6668
74
   창조로 빠져보는 API #3 [13]
지상현 2005/09/04  7262
73
   창조로 빠져보는 API #2 [3]
지상현 2005/09/04  6329
72
   창조로 빠져보는 API #1 [2]
지상현 2005/09/04  7042
71
   [폴더선택창보여]명령어의 언어 한글로 [8]
qkrwhdgns 2005/08/27  5448
70
   [ps.구루 강좌#13] 창조에서는 델파이에서 만든 DLL만 가능합니까? [1]
이진백 2005/07/22  5959
LIST ALL   Prev [1] 2 [3][4][5] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인