전체 글 726

Hello 예제 for Boo

Boo는 Python에 영향을 받은 새로운 객체지향 언어로서 언어로서 CLI(Common Language Infrastructure)를 위한 정적 타입 언어(변수의 형이 컴파일 시에 정해지는 언어)이다.Boo 언어의 홈페이지는 boo.codehaus.org 이다.(2009년 3월 18일 현재 Boo의 최신버전은 0.9.1 이다.)Boo 언어의 요약: docs.codehaus.org/display/BOO/Language+SummaryBoo 언어로 작성된 소스코드는 booi 명령으로 직접 실행되기도 하고,booc 명령으로 컴파일되어 실행파일이 만들어지기도 한다.컨솔에 문자 출력하는 Boo 구문은       print "문자열(스트링)"이다. Boo의 print 구문은 Python의 print 구문처럼 개행 ..

프로그래밍/Boo 2009.03.31

Pollard's rho method 소개: 정수의 인수분해(factorizing integers) with Java

정의 (소수와 합성수) 1보다 큰 양의 정수 n에 대하여 (i) n = a * b 를 만족하고 1보다 큰 두 양의 정수 a와 b가 존재하면, n을 합성수(合成數, composite number)라고 한다. 참고로 이 경우, a, b 중에 적어도 하나는 sqrt(n) 보다 작거나 같다. 합성수의 예로는 4, 6, 9, 24, 143 등이 있다. (ii) n = a * b 를 만족하고 1보다 큰 두 양의 정수 a와 b가 존재하지 않으면, 즉 n을 두 양의 정수의 곱으로 표현하는 방법이 1*n과 n*1 두 가지 뿐이면, n을 소수(素數, prime number)라고 한다. 소수의 예로는 2, 3, 5, 7, 11 등이 있다. n이 소수인지 아닌지 확인하려면, n을 2 보다 크거나 같고 sqrt(n) 보다 작거..

Pollard's rho method 소개: 정수의 인수분해(factorizing integers) with Groovy

정의 (소수와 합성수) 1보다 큰 양의 정수 n에 대하여 (i) n = a * b 를 만족하고 1보다 큰 두 양의 정수 a와 b가 존재하면, n을 합성수(合成數, composite number)라고 한다. 참고로 이 경우, a, b 중에 적어도 하나는 sqrt(n) 보다 작거나 같다. 합성수의 예로는 4, 6, 9, 24, 143 등이 있다. (ii) n = a * b 를 만족하고 1보다 큰 두 양의 정수 a와 b가 존재하지 않으면, 즉 n을 두 양의 정수의 곱으로 표현하는 방법이 1*n과 n*1 두 가지 뿐이면, n을 소수(素數, prime number)라고 한다. 소수의 예로는 2, 3, 5, 7, 11 등이 있다. n이 소수인지 아닌지 확인하려면, n을 2 보다 크거나 같고 sqrt(n) 보다 작거..

Pollard's rho method 소개: 정수의 인수분해(factorizing integers) with Ruby

정의 (소수와 합성수) 1보다 큰 양의 정수 n에 대하여 (i) n = a * b 를 만족하고 1보다 큰 두 양의 정수 a와 b가 존재하면, n을 합성수(合成數, composite number)라고 한다. 참고로 이 경우, a, b 중에 적어도 하나는 sqrt(n) 보다 작거나 같다. 합성수의 예로는 4, 6, 9, 24, 143 등이 있다. (ii) n = a * b 를 만족하고 1보다 큰 두 양의 정수 a와 b가 존재하지 않으면, 즉 n을 두 양의 정수의 곱으로 표현하는 방법이 1*n과 n*1 두 가지 뿐이면, n을 소수(素數, prime number)라고 한다. 소수의 예로는 2, 3, 5, 7, 11 등이 있다. n이 소수인지 아닌지 확인하려면, n을 2 보다 크거나 같고 sqrt(n) 보다 작거..

Pollard's rho method 소개: 정수의 인수분해(factorizing integers) with Python

정의 (소수와 합성수) 1보다 큰 양의 정수 n에 대하여 (i) n = a * b 를 만족하고 1보다 큰 두 양의 정수 a와 b가 존재하면, n을 합성수(合成數, composite number)라고 한다. 참고로 이 경우, a, b 중에 적어도 하나는 sqrt(n) 보다 작거나 같다. 합성수의 예로는 4, 6, 9, 24, 143 등이 있다. (ii) n = a * b 를 만족하고 1보다 큰 두 양의 정수 a와 b가 존재하지 않으면, 즉 n을 두 양의 정수의 곱으로 표현하는 방법이 1*n과 n*1 두 가지 뿐이면, n을 소수(素數, prime number)라고 한다. 소수의 예로는 2, 3, 5, 7, 11 등이 있다. n이 소수인지 아닌지 확인하려면, n을 2 보다 크거나 같고 sqrt(n) 보다 작거..

Hello 예제를 통해서 비교하는 Java 언어와 Scala 언어

아래의 두 예제의 실행 결과는 똑 같다. 이 두 예제를 통해서 Java 언어와 Scala 언어의 문법적인 차이를 알아보고자 한다. Java 예제 /** * Filename: HelloWorld.java * * Compile: javac -d classes HelloWorld.java * Execute: java -cp classes examples.HelloWorld */ package examples; class HelloWorld { public static void main(String[] args) { System.out.println("Hello, world!"); System.out.println("안녕하세요?"); } } /* Console Output: Hello, world! 안녕하세요?..

대화형 모드의 진법(radix) 변환 예제 with Scala

다음은 대화형 모드(interactive mode)에서 진법 변환(radix conversion)하는 Scala 소스 코드이다. 메뉴는 주메뉴 Command: (S)et radix, (A)bout, (Q)uit or E(x)it 와 부메뉴 SubCommand: 'main()' to goto Main menu, 'exit()' or 'quit()' to exit 로 구성되어 있으며, 진법 변환의 핵심은 java.lang.Integer 클래스와 java.lang.Long 클래스의 정적 메소드 Integer.parseInt(String, int); java.lang.Long.toString(long, int); 울 이용하였으며, 지원되는 진법은 2진법에서 36진법 까지이다. 참고로 Java의 Long 타입과 ..

황금비율(golden ratio) 구하기 with Scala

다음은 이차방정식 x^2 - x - 1 = 0 의 양의 근 즉 황금비율(golden ratio)을 구하는 Scala애플리케이션 소스이다. 황금비율을 구하는 비례방정식은 1 : x = x : (x+1) 이며, 이를 이차방정식으로 표현한 것이 x^2 - x - 1 = 0 이다. See: http://en.wikipedia.org/wiki/Golden_ratio /* * Filename: testGoldenRatio.scala * 황금률(즉, 이차방정식 x^2 - x - 1 = 0 의 양의 근)을 계산한다. * * Execute: scala testGoldenRatio.scala * * Date: 2009/03/09 * Author: PH Kim [ pkim (AT) scripts.pe.kr ] */ def ..

현재 시각 알아내기 for Scala

현재 시각을 컨솔에 보여주는 간단한 애플리케이션의 Scala 언어 소스 코드이다. UTC란 1970년 1월 1일 0시 0분 0초를 기준으로 하여 경과된 초 단위의 총 시간을 의미한다. * UTC(Universal Time Coordinated, 협정세계시, 協定世界時) /* * Filename: testCTime.scala * * Compile: scalac -encoding MS949 testCTime.scala * Execute: scala TestCTimeApp */ import java.util._ object TestCTimeApp { var weekNames : Array[String] = Array( "일", "월", "화", "수", "목", "금", "토" ) def main(args: ..

손으로 계산하는 긴자리 곱셈표 만들기 with Visual Basic

초등학교 때 배우는 두 정수의 곱셈표를 만들어 주는 C# 소스이다. ' -------------------------------------------- ' Filename: MakeMultTableVB.bas ' ' Print a multiplication table. ' ' Compile: vbc MakeMultTableVB.bas ' Execute: MakeMultTableVB 230 5100 ' ' Date: 2009/03/07 ' Author: pkim (AT) scripts.pe.kr ' -------------------------------------------- Imports System Namespace MyTestApplication1 Class MakeMultTableApp Share..