분류 전체보기 726

Lua 언어로 역삼각함수, 역쌍곡선함수 값을 구하는 예제

역삼각함수란 삼각함수의 역함수를 의미하고, 역쌍곡선함수란 쌍곡선함수의 역함수를 의미한다. 수학에서 sin 함수의 역함수는 arcsin 으로 표기되는데, Lua 언어에서는 math.asin() 함수로 구현되어 있다. -- Filename: testArcSine.lua -- -- Execute: lua testArcSine.lua -- -- Date: 2013. 1. 1. -- Copyright (c) pkim _AT_ scripts.pe.kr function sin(x) local y = math.sin(x) return y end function asin(x) local y = math.asin(x) return y end function sinh(x) local y = math.sinh(x) retur..

프로그래밍/Lua 2013.01.01

C 언어로 역삼각함수, 역쌍곡선함수 값을 구하는 예제

역삼각함수란 삼각함수의 역함수를 의미하고, 역쌍곡선함수란 쌍곡선함수의 역함수를 의미한다. 수학에서 sin 함수의 역함수는 arcsin 으로 표기되는데, C 언어나 C++ 언어에서는 asin 함수로 구현되어 있다. 아래의 소스는 Visual C++ 또는 gcc 로 컴파일되는 소스이다. 실행 결과는 같다. /* * Filename: testArcSine.c * * Compile: cl testArcSine.c * Execute: testArcSine * * Or * * Cpmpile: gcc -o testArcSine testArcSine.c * Execute: ./testArcSine * * Date: 2013. 1. 1. * Copyright (c) pkim _AT_ scripts.pe.kr */ #in..

프로그래밍/C 2013.01.01

Ruby 언어로 역삼각함수, 역쌍곡선함수 값을 구하는 예제

역삼각함수란 삼각함수의 역함수를 의미하고, 역쌍곡선함수란 쌍곡선함수의 역함수를 의미한다. 수학에서 sin 함수의 역함수는 arcsin 으로 표기되는데, Ruby 언어에서는 Math::asin() 함수로 구현되어 있다. 다음 소스는 Ruby, JRuby 중 어느 것으로 실행해도 같은 결과를 얻는다. # -*- encoding: utf-8 -*- # Filename: testArcSine.rb # # Execute: ruby testArcSine.rb # # Or # # Execute: jruby testArcSine.rb # # Date: 2013. 1. 1. # Copyright (c) pkim _AT_ scripts.pe.kr def sin(x) y = Math::sin(x) return y end d..

Python 언어로 역삼각함수, 역쌍곡선함수 값을 구하는 예제

역삼각함수란 삼각함수의 역함수를 의미하고, 역쌍곡선함수란 쌍곡선함수의 역함수를 의미한다. 수학에서 sin 함수의 역함수는 arcsin 으로 표기되는데, Python 언어에서는 math.asin() 함수로 구현되어 있다. 이를 사용하기 위해서는 구문 import math 이 필요하다. 다음 소스는 Python, Jython, IronPython 중 어느 것으로 실행해도 같은 결과를 얻는다. 특히 IronPython 으로는 옵션 /target:exe 를 사용하여 컴파일하면 실행파일 testArcSine.exe 및 testArcSine.dll 파일을 얻는다, dll 파일이 있어야 exe 파일이 실행된다. # -*- encoding: utf-8 -*- # Filename: testArcSine.py # # Ex..

Java 언어로 역삼각함수, 역쌍곡선함수 값을 구하는 예제

역삼각함수란 삼각함수의 역함수를 의미하고, 역쌍곡선함수란 쌍곡선함수의 역함수를 의미한다. 수학에서 sin 함수의 역함수는 arcsin 으로 표기되는데, Java 언어에서는 java.lang.Math.asin(double) 메소드로 구현되어 있다. /* * Filename: TestArcSine.java * * Compile: javac -d . TestArcSine.java * Execute: java TestArcSine * * Date: 2013. 1. 1. * Copyright (c) pkim _AT_ scripts.pe.kr */ public class TestArcSine { public static double sin(double x) { double y = Math.sin(x); return..

C# 언어로 역삼각함수, 역쌍곡선함수 값을 구하는 예제

역삼각함수란 삼각함수의 역함수를 의미하고, 역쌍곡선함수란 쌍곡선함수의 역함수를 의미한다. 수학에서 sin 함수의 역함수는 arcsin 으로 표기되는데, C# 언어에서는 Math.Asin 함수로 구현되어 있다. 아래의 소스는 Visual C# 으로 컴파일되는 소스이다. /* * Filename: testArcSine.cs * * Compile: csc testArcSine.cs /reference:System.Numerics.dll * Execute: testArcSine * * Date: 2013. 1. 1. * Copyright (c) pkim _AT_ scripts.pe.kr */ using System; using System.Numerics; namespace ExperimentConsole { ..

프로그래밍/C# 2013.01.01

C++ 언어로 역삼각함수, 역쌍곡선함수 값을 구하는 예제

역삼각함수란 삼각함수의 역함수를 의미하고, 역쌍곡선함수란 쌍곡선함수의 역함수를 의미한다. 수학에서 sin 함수의 역함수는 arcsin 으로 표기되는데, C 언어나 C++ 언어에서는 asin 함수로 구현되어 있다. 아래의 소스는 Visual C++ 또는 g++ 로 컴파일되는 소스이다. 실행 결과는 같다. /* * Filename: testArcSine.cpp * * Compile: cl /EHsc testArcSine.cpp * Execute: testArcSine * * Or * * Cpmpile: g++ -o testArcSine testArcSine.cpp * Execute: ./testArcSine * * Date: 2013. 1. 1. * Copyright (c) pkim _AT_ scripts...

프로그래밍/C++ 2013.01.01

윈도우에 MinGW, gmp, mpfr 설치하고 테스트하기

이전에는 MinGW 의 gcc 버전이 낮아서 gmp, mpfr 을 사용하는데 핸디캡이 있었지만, 지금은 MinGW 의 gcc 버전이 4.6.x 대로 높아져서 꽤 쓸만한 개발도구가 되었다. 그래서 MinGW 의 설치 방법과 gmp, mpfr 라이브러리를 사용하는 방법을 남겨 둔다. MinGW 는 Minimalist GNU for Windows 를 줄인 굴이라고 보면 이애하기가 쉬울 것이다. * 윈도우 환경에 MinGW 및 MSYS 설치하기 무료로 쓰는 GNU C/C++ 컴파일러를 사용하기 위해서, 윈도우에 cygwin을 설치하는 일은 다소 무겁다는 생각이 든다. 이럴 때는 MinGW와 MSYS를 설치하면 간단한 C/C++ 개발 환경이 구축된다. MinGW는 윈도우용 GCC Compiler Toolchain..

프로그래밍/C++ 2012.12.31

Ubuntu에 설치된 xmaxima를 이용하여 그린 감마함수(gamma function)의 그래프

감마함수 Γ(x)의 정의 (i) \textrm{$\alpha > 0$일 때는} \Gamma (\alpha) = \int_0^\infty e^{-t} t^{\alpha - 1} \ dt (ii) \textrm{$\alpha 0$ 이 되는 최소의 양의 정수 $k$를 찾아서} \Gamma (\alpha) = \dfrac{\Gamma(\alpha + k)}{\alpha (\alpha + 1) \cdots (\alpha +k - 1)} [감마함수 Γ(x)의 특징] (1) \Gamma (\alpha + 1) = \alpha \cdot \Gamma(\alpha) (2) \textrm{특히 $n$이 양의 정수일 때는 \ } \Ga..

학습/수학 2012.12.13

감마함수(gamma function)의 값을 (유효수자 15자리 까지 정밀하게) 계산하는 Java 언어 소스

Lanczos 알고리즘은 Stirlng 공식에 의한 알고리즘 보다 정밀하며, 십진수로 유효숫자 약 15자리 까지는 정확하게 계산해 준다. 단지 exp 함수를 이용하는 부분에서는 exp, sin, pow 함수들의 구현에 따라 오차가 더 있을 수 있다. C 언어에는 long double 타입이 있어서 좀 더 정밀한 계산을 할 수 있지만. Java 언어에는 그렇지 못하여 그냥 double 타입을 사용하였다. 비교를 위해 아파치의 commons의 Math 라이브러라에서 지원하는 Gamma.logGamma 함수를 사용한 결과도 함께 출력하도록 하였다. (commons 라이브러리는 http://commons.apache.org/math/download_math.cgi 에서 다운로드할 수 있다. commons 2.2..