기본 콘텐츠로 건너뛰기

라벨이 operator인 게시물 표시

[matplotlib]quiver()함수

[python] 연산자 II: 비트 연산자, 특수한 연산자

연산자 II 비트 연산자(Bitwise operators) 특수한 연산자 재할당연산자 다중할당 in, is 연산자 가변연산자('*') 비트 연산자(Bitwise operators) 컴퓨터 연산은 2진법에 의해 진행됩니다. 데이터가 입력되면 2진수로 변환되고 그 결과는 메모리에 한 개(1비트)당 0 또는 1로 저장 됩니다. 입력된 두 데이터의 연산은 다음의 순서로 이루어집니다. 2진수로 변환 동일한 위치에 저장된 값들 사이에 비트단위로 연산 예를 들어 십진수 2와 10의 경우 2진수로 b0010, b1010이 됩니다. 두수의 각 비트의 연산은 표 1과 같습니다. 표 1 2와 10의 비트 연산 십진수 이진수 2 0 0 1 0 10 1 0 1 0 (+)12 1 1 0 0 비트로 표현된 객체 또는 객체들 사이에 연산은 표 2에 소개한 연산자를 사용합니다. 비트 연산을 위해서는 이진수로 전환이 필요하며 음의 이진수로의 변환을 위해서는 보수법 을 적용합니다. 표 2 비트 연산자 연산자 의미 x & y 비트 단위로 AND x | y 비트 단위로 OR ~x 비트 단위로 NOT, 1의 보수(complement) x^y 비트 단위로 XOR (다른 값: True(1), 같은 값: False(0)) x >> a 객체 x를 오른쪽으로 a 비트 이동 x << a 객체 x를 왼쪽으로 a 비트 이동 표 1에서 나타낸 것과 같이 표 2에서 소개한 비트연산자 역시 동일한 위치의 비트 사이에서...

[Julia]기본사항과 연산자

Julia의 기본 구조 기본 객체에 값을 할당 x, y, z=1, [1:3; 5:8], "A string" x 1 y 7-element Array{Int64,1}: 1 2 3 5 6 7 8 z "A string" x, y=y,x x 7-element Array{Int64,1}: 1 2 3 5 6 7 8 y 1 chaining: 특정한 값을 여러 변수에 동시 할당할 수 있습니다. 다음 예의 경우 오른쪽에서 왼쪽으로 할당됩니다. x=y=z=1 x, y, z (1, 1, 1) x==y true x==z true 0< x < 5 true 5 <x != y <5 false 상수정의 const date_of_birth = 2012 #constant 선언 2012 1 줄 주석은 python과 같이 '#'을 사용합니다. 여러줄 주석은 "#= ~~ =#"를 사용합니다. i=1 #1줄 주석입니다. 1 i=2 #=여러줄 주석을 입력할 경우 사용 =# 2 키워드 function를 사용하여 함수를 정의합니다. function 함수이름 (인수들) 본문 return(결과) end #function 정의 function add_two(x, y) return(x+y) end add_two (generic function with 1 method) add_two(3, 5) 8 연산자 산술 연산자 연산자 설명 +, -, *, / 덧셈, 뺄셈, 곱셈, 나눗셈 x^y 지수 x\y inverse division (== y/x) x%y, rem(x, y) ...

[python] 연산자(Operator) I: 산술, 비교, 논리 연산자

1.4 연산자(operator) 산술 연산자 비교 연산자 논리연산자(logical operators) 비트 연산자 특수한 연산자 데이터들 사이에 연산이 필요한 경우 연산의 종류를 구분하기 위한 약속이 존재합니다. 이 약속된 규칙 또는 표현을 연산자(operator) 라고 합니다. 연산자는 특정한 명령(들)을 수행하기 위한 여러 코드들을 그룹화하는 함수 입니다. 파이썬은 산술, True 또는 False의 결과를 반환하는 논리 연산 등을 수행하기 위한 다양한 연산자들을 제공하고 있으며 이 연산에 참여하는 값들을 피연산자(operand) 라고 합니다. 예를 들어 다음 코드는 두 수치형 리터럴의 덧셈을 실행한 것입니다. 5+8 13 두 정수의 덧셈연산은 연산자 ' + '에 의해 실행되며 이 연산에 관계된 5와 8이 피연산자가 됩니다. 그 연산의 결과는 13입니다. 산술 연산자(Arithmatic operators) 표 1은 두 객체에 대한 산술 연산을 실행하기 위한 연산자 입니다. 표 1 산술연산자 연산자 의미 x + y 단일 또는 두개의 피연사자의 덧셈 x - y 단일 또는 두개의 피연사자의 뺄셈 x * y 두개의 피연사자의 곱셈 x / y 두개의 피연사자의 나눗셈으로 결과는 실수형 x % y 두개의 피연사자의 나눗셈의 나머지를 반환 x // y 두개의 피연사자의 나눗셈의 몫을 반환 x**y 피연산자의 거듭제곱 (power) x=5 y=2 print(x+y) # 덧셈 print(x-y) # 뺄셈 print(x*y) # 곱셈 print(x/y) # 나눗셈 7 3 10 2.5 print(x//y) # 몫 print(x%y) # 나머지 2 1 print(x**y) # 거듭제곱 25 ...

코틀린 연산자 (2)

비트 연산자 연산자 의미 and, .and(bits)       and, 모두 true일경우만 true or, .or(bits)        or, 모두 false일경우만 false xor, .xor(bits)         배타적 OR, 두 값이 다르면 true .inv(bits)          not,  보수 연산으로 반전 .shr(bits)          not,  지정한 비트수 만큼 오른쪽으로 이동 .shl(bits)          not,  지정한 비트수 만큼 왼쪽으로 이동 .ushr(bits)          not,  부호 고려하지 않고 지정한 비트수 만큼 오른쪽으로 이동 fun main() {     val a = 1     val b = 0     println("and: ${a and b},  or: ${a or b}, xor: ${a.xor(b)}, inv: ${a.inv()}") }       and: 0,  or: 1, xor: 1, inv: -2 1 shl 2  //1을 왼쪽으로 2 비트 이동  res1: kotlin.Int = 4 4 shr 2 //4를 오른쪽으로 2비트 이동 res2: kotlin.Int = 1 10진수를 2진수로 변환하기 위해 다음 메소드를 적용합니다. 객체.toString(2) : 10 진수인 객체를 2진수로 변환 다음과 같이 1과 4를 이진수로 변환하면 다음과 같습니다. ...

코틀린 함수의 종류(1)

단일 표현(Single expression)의 함수   fun max(a:Int = 3, b:Int = 6):Int{        return if(a>b) a else b      } 위 max함수의 본문은return() 문내에 값을 나타내는 단일 표현(single expression)을 전달하는 구조 입니다. 이와같이 단일 표현으로 구성된 함수의 경우 중괄호({ })를 삭제하고 함수에 결과를 직접적으로 할당할 수 있습니다. 즉, 할당연산자(“=”)를 사용하여 본문을 직접 함수의 헤드와 연결하는 방식입니다. fun max1(a:Int = 3, b:Int = 6):Int=if(a>b) a else b max1(10, 12) 12 위의 경우는 결과형을 명시하였지만 컴파일 동안 유추할 수 있으므로 결과형(return type)은 생략할 수 있습니다. fun max1(a:Int = 3, b:Int = 6)=if(a>b) a else b max1(10, 12) 12 그러나 중괄호로 시작되는 본문 내에 return문 존재하는 함수의 경우 결과형(return type)은 반드시 명시하여야 합니다. Infix 함수 두개의 변수 가운데 오는 함수입니다. map이라는 자료구조를 생성할 경우 사용되는 ‘to’역시 infix함수입니다. 이 함수는 다음의 형식으로 직접 정의할 수 있습니다. infix fun 매개변수1자료형.함수이름(매개변수2): 반환형 {   본문 } 두개의 매개변수 중 매개변수1은 ‘this’라는 키워드로 본문에 호출됩니다. 다음은 두 정수의 합을 반환하는 함수입니다. infix fun Int.Total(x: Int): Int {   return this+x //this는 매개변수 1을 의미 } 12.Total(3)//dot(.) 연산자 적용...