gmp 6

Boost Library를 이용하여 임의의 정밀도를 갖는 부동소수점수 계산하기

Boost Library 1.75.0 을 설치하고 Visual Studio 2019 의 명령행 컴파일러 cl 로 컴파일하였다. 컴파일하기 전에 미리 환경변수 BOOST_LIB_PATH 와 MPIR_LIB_PATH 를 각각 Boost Library 와 MPIR Library 가 있는 경로로 설정해 놓아야 한다. /* * Filename: CalculateAreaOfDiskWithBoosLibrary.cpp * * Purpose: Test floating point numbers of arbitrary precision. * * Compile: cl CalculateAreaOfDiskWithBoosLibrary.cpp /I%BOOST_LIB_PATH% /I%MPIR_LIB_PATH% /EHsc /utf-8 ..

프로그래밍/C++ 2021.03.29

C# 에서 xmpir 사용하기

1. mpir 은 gmp 대신사용하는 (C/C++ 언어용) 긴 자리 수치 처리를 위한 기본 연산 라이브러리이다. 자리수가 매우 긴 정수, 유리수, 소수점수를 계산할 수 있다. 2. xmpir 은 (C 언어용 긴 자리 수치 라이브러리인) mpir 의 래퍼(wrapper) 이다. 3. xmpir 은 xmpir 다운로드 에서 구할 수 있다. (주의 사항. dl4windows.dll 파일이 존재하는 폴더의 경로명에 #문자가 있으면 컴파일은 되나 실행 시에 에러에 걸린다. 그 이유는 xmpir 이 dl4windows.dll 파일을 찾을 때 URL 주소를 적용해서 찾기 때문이다.) 실행에 필요한 *.dll 파일들은 (현재 경로 또는) 환경변수 PATH 에 결린 경로의 폴더에 존재해야 한다. dl4windows.dl..

프로그래밍/C# 2013.01.24

윈도우에 MPIR 라이브러리 설치하고 사용하기

MPIR 은 Multiple Precision Integers and Rationals 은 줄인 약자로서 C 언어나 C++ 언어로 매우 긴 자리의 수치 연산을 하는 프로그램을 작성할 때 사용되는 라이브러리이다. 참고. 위키피디아의 MPIR 설명 MPIR 은 GMP 처럼 무한 자리 수치 계산을 위한 (GMP 를 대체하는) 기본 라이브러리이다. MPIR 은 정수 계산, 유리수 계산, 부동소수점수 계산은 지원하지만, 복소수 계산은 지원하지 않는다. MPIR 은 GMP 보다 훨씬 다양한 OS 를 지원하며 CPU 에 최적화 되어있다. MPIR 은 LGPL 3 적작권으로 보호받는 소스 공개 소프트웨어이다. 상업용 패키지에 포함시킬 때는 MPIR 이 GMP 보다 라이센스 면에서 더 자유로운 것 같다. 다음은 MPIR..

C++ 언어로 GMP 라이브러리를 이용하여 30! 까지 정확하게 계산하기

아래의 소스는 윈도우에서 Luna MinGW & GNU C 4.5.0 (gcc), 로 테스트되었다. long 타입으로는 13! 까지만 정확하계 계산되지만 GMP 를 이용한 계산은 아무리 큰 수의 곱셈이라도 정확히 계산해준다. 윈도우에 Luna MinGW (with GCC 4.5.0) 설치하기: 1) Luna MinGW 홈페이지(MinGW GCC C/C++ Compiler package with installer) 2) Luna MinGW 설치파일 다운로드 영문 위키피디아에서 소개하는 MinGW MinGW 의 공식 웹사이트에서 MinGW 를 설치하면 gcc 버전이 3.4.5 밖에 되지 않고, gmp 라이브러리도 수동으로 설치헤야 하는 번거로움이 있으므로, 여기서는 Luna MinGW 를 설치하기로 한다. ..

프로그래밍/C++ 2010.08.13

C 언어로 GMP 라이브러리를 이용하여 30! 까지 정확하게 계산하기

아래의 소스는 윈도우에서 Luna MinGW & GNU C 4.5.0 (gcc), 로 테스트되었다. long 타입으로는 13! 까지만 정확하계 계산되지만 GMP 를 이용한 계산은 아무리 큰 수의 곱셈이라도 정확히 계산해준다. 윈도우에 Luna MinGW (with GCC 4.5.0) 설치하기: 1) Luna MinGW 홈페이지(MinGW GCC C/C++ Compiler package with installer) 2) Luna MinGW 설치파일 다운로드 * 소스 파일명: recFactGMP01.c /* * Filename: recFactGMP01.c * * Compile: gcc -o recFactGMP01 recFactGMP01.c -lgmp */ #include #include void factor..

프로그래밍/C 2010.08.13

GMP 사용 예제 for C

GMP는 The GNU Multiple Precision Arithmetic Library(고정밀도 연산을 위한 GNU 라이브러리)의 줄임글로서 GNU MP라고도 한다. 리눅스 호환 환경이면 대부분 GMP는 이미 설치되어 있을 것이다. GMP의 공식 홈페이지는 http://gmplib.org 이고, GMP는 LGPL 하에서 배포된다. 또 gcc는 리눅스 호환 환경에서 쓸 수 있는 C 컴파일러(GNU C 컴파일러)이다. 대부분의 리눅스 호환 환경에는 gcc가 설치되어 있을 것이다. 다음 소스 코드는 GMP의 설치 테스트를 하기 위한 간단한 예제이다. C 언어에서 GMP 라이브러리를 사용하기 위해서는 헤더 파일 gmp.h를 인클루드한다. 컴파일할 때는 반드시 컴파일 옵션 -lgmp 를 주어야 한다. 또 컴파..

프로그래밍/C 2008.03.19