문서의 임의 삭제는 제재 대상으로, 문서를 삭제하려면 삭제 토론을 진행해야 합니다. 문서 보기문서 삭제토론 조건문(프로그래밍) (문단 편집) == 상세 == [[BASIC]], [[C언어|C]], [[PHP]], [[Lua]], [[Python]] 등등 대단히 많은 프로그래밍 언어에서 제어문 명령어로 if를 사용한다. 그 외에 while, for, switch 등도 있지만, if가 제일 대표적이다. if문을 세계 최초로 사용한 사람은 [[해석기관]]을 담보로 프로그래밍을 창안한 [[에이다 러브레이스]]. 사실상 에이다 러브레이스가 세계의 고급 프로그래밍 언어 구조 대부분을 설계했다. 어떻게 보면 [[안토니오 산텔리아|에이다 러브레이스의 창안이 너무 충격적이라서 그 이후의 컴퓨터 시스템이 에이다의 방식대로 따라간 것]]일지도 모른다. 제어문은 프로그램 실행 시 조건이 맞을 경우에만 실행하는 부분을 표시하는 것으로, 언어마다 문법은 조금씩 다르지만 명령어로 if를 쓰는 것은 거의 전 언어 공통이라고 봐도 된다. 일반적으로 {{{#!syntax basic if (<조건식>) then { <조건식이 참일 경우> } }}}형태이며 then은 언어에 따라 생략되는 경우도 있다. if문의 조건식 부분에는 어떠한 식도 올 수 있으나 해당 식에는 반드시 반환값이 존재해야 하며 반환값의 타입은 TRUE/FALSE 만을 표현하는 boolean 값이어야 한다. [[C언어]]계열 언어는 이 검사가 느슨해서 integer값을 반환하는 식을 넣어도 정상적으로 동작한다. 이 경우 평가된 값이 0일 경우 거짓, 0이 아닐 경우(양수, 음수 모두) 참으로 판단한다. [[Java]]계열 언어는 조건식의 타입이 boolean 값이 아닐 경우 컴파일 에러가 난다. 참도 거짓도 아닌 '중간 상태'는 존재하지 않는다. 만약 전자회로에서 3-state 입력(플로팅 게이트)을 if문에 그냥 때려박을 경우 해당 if문은 CPU에서 평가될 때마다 참과 거짓이 랜덤으로 평가된다.[* 참과 거짓이 균일하게 랜덤으로 나오지도 않는다. 대부분의 경우 어느 한 쪽에 크게 치우친다.] if 문의 조건식 부분에 식(expression)이 아닌 문(statement)을 넣으면 컴파일 에러가 난다. 따라서 식 부분에 중괄호 문법은 사용할 수 없다.저장 버튼을 클릭하면 당신이 기여한 내용을 CC-BY-NC-SA 2.0 KR으로 배포하고,기여한 문서에 대한 하이퍼링크나 URL을 이용하여 저작자 표시를 하는 것으로 충분하다는 데 동의하는 것입니다.이 동의는 철회할 수 없습니다.캡챠저장미리보기