전체 글 725

거듭제곱(지수) 계산 with Haskell

Haskell 언어에서 지수 계산하는 연산자는 ^와 ** 두 가지가 있다. 그런데 ^는 긴 계산 결과가 긴 정수이고, **는 게산 결과가 부동소수점수이다. * GHC의 ghci를 이용하여 지수 계산을 테스트해 보았다. :set prompt "스트링"은 GHC에서 지원하는 프롬프트 변경 명령이다. GHCi, version 6.10.4: http://www.haskell.org/ghc/ :? for help Loading package ghc-prim ... linking ... done. Loading package integer ... linking ... done. Loading package base ... linking ... done. Prelude> :set prompt "ghci> " ghci..

구구단 출력 예제 with Haskell

Haskell 언어로 구구단 중의 2단을 출력하는 프로그램 소스를 작성해 보았다.Haskell 언어는 순수한 함수형 언어이기 때문에 절차적 언어에서 많이 쓰는 for 반복문을 지원하지 않는다.  아래의 소스에서는 리스트 자료형을 적절히 사용하였다.ex는 정수들로 구성된 리스트를 참조하는 변수로, dan은 정수 2를 의미하는 상수로 사용되었다.es는 구구단의 단을 의미하는 정수(여기서는 2)를 인자로 받아서 출력될 스트링의 리스트를 만드는 함수이다. 'show 인자'는  인자(여기서는 정수)를 스트링으로 변환하는 일을 한다.printDan은 세 함수 map,  concat , putStr를 합성한 함수로서  스트링의 리스트를인자로 받아 리스트의 각 요소(스트링) 마다 새줄 문자 "\n"를 붙여서 컨솔에 출..

Hello 예제 with Haskell

Haskell 언어는 Pascal, C, Java 같은 절차적 언어가 아니라, Lisp 처럼  햠수형 언어이다.소스 코드를 파일로 저장하여 runghc 나 ghci로 실행하거나, ghc로 컴파일하려면, 소스 코드에main = 부분이 꼭 있어야 한다.Haskell 언어 홈페이지는 www.haskell.org 이다.여기서는 윈도우용 GHC를 다운로드하여 설치하고 테스트하였다.(http://hackage.haskell.org/platform/에서 HaskellPlatform-2009.2.0.2-setup.exe를 다운로드하여 설치해도 된다.)Hugs 홈페이지(http://www.haskell.org/hugs/)에서 WinHugs-Sep2006.exe (14 MB)를 다운로드하여 설치해도 된다.컨솔에 문자열 출..

클래스 상속(subclassing) 예제 for .NET with Visual Basic

다음은 세 개의 Public 클래스로 구성되어 있다. 각 클래스는 별도의 파일로 저장되어야 한다. 이 예제는 C#용으로 제공된 클래스 상속 예제와의 비교를 위해 제공된다. (Java와는 달리) 하나의 Visual Basic 소스파일에 public 클래스가 여러 개 존재해도 된다. 소스파일명도 Public 클래스명과 달라도 된다. (비스크립트형) Visual Basic 언어는 소스 코드에서 C, C++, C#, Java 언어 처럼 대소문자 구별을 엄격히 한다. Parent는 부모 클래스이고 Child는 Parent에서 상속 받은 자식 클래스이다. 컴파일하는 명령은 vbc TestSubclassing.bas Parent.bas Child.bas 이다. ' Filename: Parent.bas Imports ..

스트링 리스트에서 스트링 찾기(find) for .NET with Visual C++/CLI

[파일명: TestStringFindInList.cpp]------------------------------------------------ // Filename: TestStringFindInList.cpp // // Compile: cl /clr TestStringFindInList.cpp // Execute: TestStringFindInList #using #using using namespace System; using namespace System::Collections; using namespace System::Collections::Generic; void PrintArray(List^ arr); bool Contains(String^ s) { return s->IndexOf("셋") ..

프로그래밍/C++ 2009.04.30

스트링 배열에서 스트링 찾기(find) for .NET with Visual C++/CLI

[파일명: TestStringFindApp.cpp]------------------------------------------------ // Filename: TestStringFindApp.cpp // // Compile: cl /clr TestStringFindApp.cpp // Execute: TestStringFindApp using namespace System; using namespace System::Collections; using namespace System::Collections::Generic; void PrintArray(array^ arr); bool Contains(String^ s) { return s->IndexOf("셋") >= 0; } int main(array ^a..

프로그래밍/C++ 2009.04.30