Programming Language(23)
-
난수 생성 - numpy
난수(Random number)를 생성하는데에는 2가지 방법이 있습니다. 하드웨어 난수 생성기를 이용하는 방법과 유사난수 생성기를 이용하는 방법 하드웨어 난수 생성기(Hardware Random Number Generator)물리적인 처리를 통해 예측이 불가능한 난수를 생성e.g. 마이크로 자연의 노이즈를 입력받아 난수 생성(갓 노이만 선생님께서 쓰신 방법)유사난수 생성기(Pseudo Random Number Generator)난수를 흉내내기 위한 알고리즘을 사용하는 SWe.g. MT19937(Mersenne Twister) 메르센 트위스터(Mersenne Twister)란?유사난수 생성기 중 하나로 질 좋은 난수를 빠르게 생성할 수 있다. 그러나 암호학적으로 안전하지는 않다.제가 알기론 numpy의 디..
2022.07.16 -
.py 배포
배포 시 소스코드를 보호하는 방법에는 2가지가 있습니다. .py를 .exe로 배포 https://noteforstudy.tistory.com/m/entry/exe-%ED%8C%8C%EC%9D%BC-%EB%A7%8C%EB%93%A4%EA%B8%B0 위 링크에 나온 툴들로 .py를 .exe로 바꿀 수 있습니다. .py를 .pyc로 배포 __pycache__ 밑에 생성되는 .pyc파일을 .py 대신 사용해도 됩니다. 파일명이 module.cpython-ver.pyc 이런 식으로 돼있을텐데 간단하게 module.pyc로 바꿔주시고 사용하면 됩니다. 단, 인터프리터의 버전이 동일해야되고 바이트코드 형태라 비교적 디컴파일이 쉽습니다.
2022.07.14 -
array decay
c에서 void f(int n[])과 void f(int *n)은 같다(인자를 배열로 받거나 포인터로 받거나 동일하다). 함수에 배열을 전달하면 실제로는 그 배열의 시작주소만 전달되는데(크기정보는 삭제됨) 이를 array decay라고 한다. array decay: 배열이 크기정보를 잃고 단순한 포인터가 되는 현상 이런 array decay를 막으려면 배열포인터를 이용하면 된다. 관련글: https://stackoverflow.com/questions/1461432/what-is-array-to-pointer-decay?fbclid=IwAR0cR66ImpjkdTfj6_LXkNOBZHQdJCRaomTgkq8zSnNmsP_9mcxJgo36Zfc
2022.07.08 -
[팁] 필요한 헤더파일 찾는 방법
주로 C언어에 입문하시는 분들이 함수별로 필요한 헤더파일들을 다 외워서 필요할 때 include해야되나 고민하시는데 그럴필요 없이 리눅스에서 gcc를 사용한다고 치면 컴파일 시 필요한 헤더가 없으면 컴파일러에서 warning 메시지 등을 띄울겁니다 e.g. implicit declaration of function 'funcname' 이걸 보고 해당 함수명을 man 으로 검색하시면 필요한 헤더파일들이 나옵니다.
2022.07.03 -
[C] C언어 배우기
https://dojang.io/course/view.php?id=2 강좌: C 언어 코딩 도장 모두 펼치기모두 접기 dojang.io
2022.03.24