본문 바로가기

전체 글

(1837)
1061 : [기초-비트단위논리연산] 비트단위로 OR 하여 출력하기 Q> 입력된 정수 두 개를 비트단위로 or 연산한 후 그 결과를 정수로 출력해보자. 비트단위(bitwise) 연산자 |(or, vertical bar, 버티컬바)를 사용하면 된다. ** | 은 파이프(pipe)연산자라고도 불리는 경우가 있다. ** 비트단위(bitwise) 연산자는, ~(bitwise not), &(bitwise and), |(bitwise or), ^(bitwise xor), (bitwise right shift) 가 있다. 예를 들어 3과 5가 입력되었을 때를 살펴보면 3 : 00000000 00000000 00000000 00000011 5 : 00000000 00000000 00000000 00000101 3 | 5 : 00000000 00000000 00000000 0000011..
1060 : [기초-비트단위논리연산] 비트단위로 AND 하여 출력하기 Q> 입력된 정수 두 개를 비트단위로 and 연산한 후 그 결과를 정수로 출력해보자. 비트단위(bitwise)연산자 &를 사용하면 된다.(and, ampersand, 앰퍼센드라고 읽는다.) ** 비트단위(bitwise)연산자는, ~(bitwise not), &(bitwise and), |(bitwise or), ^(bitwise xor), (bitwise right shift) 가 있다. 예를 들어 3과 5가 입력되었을 때를 살펴보면 3 : 00000000 00000000 00000000 00000011 5 : 00000000 00000000 00000000 00000101 3 & 5 : 00000000 00000000 00000000 00000001 이 된다. 비트단위 and 연산은 두 비트열이 주어졌..
1059 : [기초-비트단위논리연산] 비트단위로 NOT 하여 출력하기 Q> 입력 된 정수를 비트단위로 참/거짓을 바꾼 후 정수로 출력해보자. 비트단위(bitwise)연산자 ~ 를 붙이면 된다.(~ : tilde, 틸드라고 읽는다.) ** 비트단위(bitwise) 연산자는, ~(bitwise not), &(bitwise and), |(bitwise or), ^(bitwise xor), (bitwise right shift) 가 있다. 예를 들어 1이 입력되었을 때 저장되는 1을 32비트 2진수로 표현하면 00000000 00000000 00000000 00000001 이고, ~1은 11111111 11111111 11111111 11111110 가 되는데 이는 -2를 의미한다. 예시 int a=1; printf("%d", ~a); //-2가 출력된다. 참고 컴퓨터에 저장되는..
1058 : [기초-논리연산] 둘 다 거짓일 경우만 참 출력하기 Q> 두 개의 참(1) 또는 거짓(0)이 입력될 때, 모두 거짓일 때에만 참이 계산되는 프로그램을 작성해보자. 입력 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다. 출력 둘 다 거짓일 경우에만 1을 출력하고, 그 외의 경우에는 0을 출력한다. A> n1, n2 = map(int, input().split()) if n1 == n2 == False: print(1) else: print(0) A1> a,b=input().split() x=int(a) y=int(b) b1=bool(x) b2=bool(y) z=int((not b1) and (not b2)) print(z) W> if else 구문 / bool 타입 not #> admin, 2019년 10월 03일, http://codeup.kr
1057 : [기초-논리연산] 참/거짓이 서로 같을 때에만 참 출력하기 Q> 두 개의 참(1) 또는 거짓(0)이 입력될 때, 참/거짓이 서로 같을 때에만 참이 계산되는 프로그램을 작성해보자. 입력 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다. 출력 참/거짓이 서로 같을 때에만 1을 출력하고, 그 외의 경우에는 0을 출력한다. A> n1, n2 = map(int, input().split()) if n1 == n2 & True: print(1) else: print(0) A1> a,b=input().split() x=int(a) y=int(b) b1=bool(x) b2=bool(y) z=int(b1 == b2) print(z) W> if else 구문 / bool 타입 처리 #> admin, 2019년 10월 03일, http://codeup.kr
1056 : [기초-논리연산] 참/거짓이 서로 다를 때에만 참 출력하기 Q> 두 가지의 참(1) 또는 거짓(0)이 입력될 때, 참/거짓이 서로 다를 때에만 참을 출력하는 프로그램을 작성해보자. 참고 이러한 논리연산을 XOR(exclusive or, 배타적 논리합)연산이라고도 부른다. 집합의 의미로는 합집합에서 교집합을 뺀 것을 의미한다. 모두 같은 의미이다. 논리연산자는 사칙연산자와 마찬가지로 여러 번 중복해서 사용할 수 있는데, 연산의 순서를 만들어주기 위해 괄호 ( )를 사용해 묶어 주면 된다. 수학에서는 괄호, 중괄호, 대괄호를 사용하지만 C언어에서는 소괄호 ( )만을 사용한다. 예시 printf(“%d”, (a&&!b)||(!a&&b)); //참/거짓이 서로 다를 때에만 1로 계산 입력 1 또는 0의 값만 가지는 2개의 정수가 공백을 두고 입력된다. 출력 참/거짓이 ..
1055 : [기초-논리연산] 하나라도 참이면 참 출력하기 Q> 두 개의 참(1) 또는 거짓(0)이 입력될 때, 하나라도 참이면 참을 출력하는 프로그램을 작성해보자. 참고 논리연산자 || 는 주어진 2개의 논리값 중에 하나라도 참(1) 이면 1(참)로 계산하고, 그 외의 경우에는 0(거짓) 으로 계산한다. ** | 기호는 쉬프트를 누른 상태에서 백슬래시(\)를 누르면 나오는 기호로, 버티컬 바(vertical bar) 기호이다. 이러한 논리연산을 OR 연산이라고도 부르고, + 로 표시하며, 집합 기호로는 ∪(합집합, union)을 사용한다. 모두 같은 의미이다. 참, 거짓의 논리값(boolean value)인 불 값을 다루어주는 논리연산자는 !(not), &&(and), ||(or) 이 있다. ** 불 대수(boolean algebra)는 수학자 불이 만들어낸 ..
1054 : [기초-논리연산] 둘 다 참일 경우만 참 출력하기 Q> 두 개의 참(1) 또는 거짓(0)이 입력될 때, 모두 참일 때에만 참을 출력하는 프로그램을 작성해보자. 참고 논리연산자 && 는 주어진 2개의 논리값이 모두 참(1) 일 때에만 1(참)로 계산하고, 그 외의 경우에는 0(거짓) 으로 계산한다. 이러한 논리연산을 AND 연산이라고도 부르고, · 으로 표시하거나 생략하며, 집합 기호로는 ∩(교집합, intersection)을 의미한다. 모두 같은 의미이다. 참, 거짓의 논리값(boolean value)인 불 값을 다루어주는 논리연산자는 !(not), &&(and), ||(or) 이 있다. ** 불 대수(boolean algebra)는 수학자 불이 만들어낸 것으로 참/거짓만 가지는 논리값과 그 연산을 다룬다. 예시 printf("%d", 1&&1); //..