전체 글 725

Fedora 13에 Mono 설치하고 테스트하기

1. Mono 설치하기 Fedora 13과 CentOS 5 에서 Mono 설치하기 명령 $ sudo yum install mod_mono (Ubuntu 10.4.1 이면 yum 대신 apt-get 명령으로 $ sudo apt-get install mono-mcs ) ' 2. Hello.cs 작성 namespace ConsoleApplication01 { using System; public class HelloApp { public static void Main(string[] Args) { Console.WriteLine("Hello, world!"); Console.WriteLine("안녕하세요?"); } } } 3. 컴파일하기 $ mcs Hello.cs 4. 실행하기와 실행 결과 $ mono Hel..

Hello 예제 2 for OCaml

컨솔에 문자 출력하는 ocaml 구문은 Printf.printf "문자열(스트링)" 이다. 여기서 개행문자 "\n"을 추가하면 개행된다. (Jython의 문자 출력 구문도 위와 같다.) 소스 파일명: hello.ml ------------------------------[소스 시작] Printf.printf "%s, %s" "Hello" "world!\n";; let name = "개똥이";; Printf.printf "%s, %s!\n" "Hello" name;; let name2 = ref "홍길동";; let greeting = "안녕하세요?";; name2 := "길동이";; Printf.printf "%s, %s씨!\n" greeting !name2;; -----------------------..

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

F# 윈도우 애플리케이션에서 마우스 이벤트 감지하기 2

F# 프로그램으로 버튼의 마우스 이벤트를 감지하여 버튼의 색깔을 변경하는 윈도우폼 애플리케이션을 작성해 보았다. 실행시키고 버튼을 클릭할 때마다 버튼의 색깔이 바뀐다. // Filename: ClickForm5.fs // // Compile: fsc --codepage:949 ClickForm5.fs // Execute: ClickForm5 // Import useful .NET namespaces open System open System.Drawing open System.Windows.Forms // Create the form and a label objects let frm = new Form(Text = "버튼 이벤트 핸들러 테스트", Height = 200) let btn = new Butt..

프로그래밍/F# 2010.08.11

F# 윈도우 애플리케이션에서 마우스 이벤트 감지하기

F# 프로그램으로 마우스 이벤트를 감지하는 간단한 윈도우폼 애플리케이션을 작성해 보았다. 실행시키고 라벨이 았는 곳을 클릭하면 클릭 횟수가 하나씩 증가한다. (* * Filename: TestMouseDownEvent.fs * * Compile: fsc TestMouseDownEvent.fs * Execute: TestMouseDownEvent * * Date: 2010/07/23 * Author: phkim pkim __AT__ scripts.pe.kr *) open System open System.Drawing open System.Windows open System.Windows.Forms // Creates the user interface let frm, lbl = new Form (), ne..

프로그래밍/F# 2010.07.23

30000! 빨리 계산하기 with F#

* 꼬리 재귀호출과 패턴 매칭을 이용하여 구현한 팩토리얼과 피보나치 수열 계산 (* Filename: fact.fs Rapid factorial and fibonacci seq implementations by pattern matching and tail recursive call Compile: fsc fact.fs Execute: fact Date: 2010/07/20 Author: phkim pkim __AT__ scripts.pe.kr *) #light let rec fact (n:int) : bigint = match n with | 0 | 1 -> 1I | k -> (bigint k) * (fact (k-1)) let factorial n = let rec loop acc k = match ..

프로그래밍/F# 2010.07.20

30000! 빨리 계산하기 with Haskell

* 꼬리 재귀호출과 패턴 매칭을 이용하여 구현한 팩토리얼과 피보나치 수열 계산 {- Filename: fact.hs Rapid factorial and fibonacci seq implementations by pattern matching and tail recursive call Compile: ghc fact.hs Execute: main Date: 2010/07/20 Author: phkim pkim (AT) scripts.pe.kr -} module Main where factorial :: Integer -> Integer factorial n = recfact 1 n recfact :: Integer -> Integer -> Integer recfact acc k = case k of 0 -..