반응형

프로그래밍 언어 6

[Python] 파이썬 논리곱, 논리합 연산(AND, OR) 리턴값과 동작 원리

오늘은 파이썬에서 논리곱, 논리합 연산(AND, OR 등)을 수행할 때의 결과값을 살펴보고, 그 동작 원리에 관해 알아보겠습니다. AND, OR 연산을 하면, 그 리턴값은 당연히 진리값(Boolean)이 아닌가 생각하실 수 있는데, 파이썬의 경우 다릅니다. 다른 언어와는 무엇이 다른지, 동작 원리는 어떻게 되는지, 하나하나 알아보도록 하겠습니다. 오랜만에 글을 쓰는 것 같은데요! 그동안 바빠서 신경 쓰지 못하다가 이번에 돌아왔습니다. 다시 언제 또 글을 쓸 수 있을지는 모르겠지만, 기회가 닿는 대로 최대한 많은 내용 공유해 드리도록 하겠습니다! 논리곱/논리합 연산 논리곱, 논리합 연산이 무엇인지는 다들 잘 알고 계실 겁니다. 혹시 잘 모르신다면, 아래의 컴퓨터구성 포스팅 내용을 참고하시면 됩니다. htt..

[Python] 아나콘다 가상환경 사용 이유 및 사용 방법

오늘은 파이썬 아나콘다(Anaconda) 가상환경에 대해 소개하고, 그 사용 방법에 관해 알아보겠습니다. 지난번에 파이썬 일반 가상환경을 소개하고 설정하는 방법에 관해 설명해 드렸는데요, 아나콘다에서의 가상환경도 이와 유사한 구조입니다. 파이썬 venv 관련 내용은 아래의 링크를 참고하시기 바랍니다. https://homubee.tistory.com/38 [Python] 파이썬 가상환경(venv) 종류 및 사용법 정리 오늘은 파이썬 가상환경과 그 종류 및 사용법에 관해 알아보겠습니다. 파이썬에는 여러 가상환경 만드는 방법을 제공하고 있는데, 처음 접해보면 헷갈리고 어려운 면이 있습니다. 관련된 자료 homubee.tistory.com 아나콘다 가상환경 아나콘다는 과학 계산용 파이썬, R 패키지 관리 소프..

[Python] 파이썬 가상환경(venv) 종류 및 사용법 정리

오늘은 파이썬 가상환경과 그 종류 및 사용법에 관해 알아보겠습니다. 파이썬에는 여러 가상환경 만드는 방법을 제공하고 있는데, 처음 접해보면 헷갈리고 어려운 면이 있습니다. 관련된 자료가 많지 않아 이렇게 글을 작성하게 되었습니다. 파이썬 가상환경 가상환경을 사용하기에 앞서 먼저 그 내용에 대해 간략히 소개하도록 하겠습니다. 프로젝트를 진행하다 보면 여러 모듈을 설치하게 되는데요, 각 모듈은 서로 의존성(dependency)을 가지는 경우가 많기 때문에 글로벌하게 모듈을 설치하게 되면 여러 프로젝트를 관리하기 어렵습니다. 예를 들어 프로젝트1에서는 A, B, 프로젝트2에서는 A, C라는 모듈을 사용하는 상황을 생각해봅시다. 여기에서 B는 A가 1.x 버전이고, C는 A가 2.x 버전이어야 사용 가능하다고 ..

[C/C++] 정수형 변수에 논리 부정 연산하기

오늘은 C언어에서 정수형 변수에 논리 부정(NOT) 연산을 하면 어떻게 될지 알아보도록 하겠습니다. 개인적으로 궁금해서 직접 실험해보고 이렇게 글로 남기게 되었습니다. C언어와 Boolean 타입 C언어는 Boolean 타입을 지원하지 않다 보니 논리형 변수와 정수형 변수를 공유합니다. 즉, 조건식에 정수형 변수가 들어갈 수 있다는 것입니다. 이 때문에 C언어에서는 BOOL이라는 사용자 정의형 타입을 만들어서 씁니다. C99부터 _Bool 타입이 표준으로 들어왔으므로 해당 타입을 사용해도 됩니다. 물론 그렇다고 해서 정수형 변수가 논리값으로 사용할 수 없는 것이 아니기 때문에 여전히 크게 다를 것은 없습니다. C++에서는 bool 형 타입을 지원하지만, 이 역시 자바나 타 언어에서의 true, false..

[C/C++] STL size 함수 숫자 오류

오늘은 C++ STL에서 size 함수 사용 시 숫자 오류가 발생하는 것에 관해 알아보고자 합니다. 어려운 문제는 아니고, 아마 굳이 C++이 아니더라도 다른 경우에도 쉽게 발생할 수 있는 문제라고 생각합니다. 다만, 한글로 된 자료가 별로 없는 것 같아 이렇게 글을 작성하게 되었습니다. 문제 상황 STL에서 제공하는 여러 자료구조 라이브러리를 보면 size 함수가 있습니다. size 함수는 자료구조 객체에 포함된 원소의 개수를 리턴하는 간단한 함수입니다. 저 같은 경우에는 이 size 값에서 다른 숫자를 빼주면서 음수 여부를 체크하려고 했는데 코드가 이상하게 동작했습니다. 비슷한 다른 사례를 찾아보니 아래와 같은 코드에서 문제가 발생하는 경우가 많았습니다. vector v; for (int i=0;i

[Java/Kotlin] 자바, 코틀린 소수점 반올림(round), 내림(floor), 올림(ceil)

오늘은 자바, 코틀린에서 소수점 지정이 가능한 반올림(round), 내림(floor), 올림(ceil) 함수를 소개하려고 합니다. 반올림이라고 하면 무척 자주 쓰이는 기능이라 표준 라이브러리에서 제공하고 있을 것 같은데요, 실제로 관련 함수를 확인할 수 있습니다. 그럼 그냥 그걸 쓰면 되지 않을까 생각하실 수 있는데, 한가지 문제가 있습니다. 표준 라이브러리에서 제공하는 함수는 자릿수를 지정하는 기능이 없어 무조건 소수점 첫째 자리에서 반올림이 수행됩니다. 이 때문에 원하는 대로 쓰기 조금 불편합니다. 인터넷을 찾아보다 보니, 자릿수를 지정하는 다양한 방법을 확인할 수 있었는데, 함수 형태로 코드를 제공하는 경우는 없어서 직접 만들어보았습니다. 자바 버전과 코틀린 버전 모두 만들었으니 필요한 쪽을 사용하..

반응형