프로그래밍/Java 36

손으로 만드는 나눗셈 계산표 with Java

다음은 초등학교에서 배우는 나눗셈 계산표를 만들어주는 Java 소스 코드이다. 나눗셈 계산표를 완성하고 나서 약수, 배수 관계를 알려준다. /* * Filename: MakeDivisionTableApp.java * * Purpose: Make a division table in a handy written form. * * Compile: javac -d . MakeDivisionTableApp.java * * Execute: java MakeDivisionTableApp 12345 32 * java MakeDivisionTableApp 500210 61 * * Date: 2008/05/15 * Author: PH Kim [ pkim ((AT)) scripts.pe.kr ] */ import java...

클래스 상속(subclassing) 예제 with Java

다음은 세 개의 public 클래스로 구성되어 있다. Java 소스파일에는 public 클래스가 하나만 존재해야 하므로 다음 세 개의 클래스는 각각 독립된 파일로 저장되어야 한다. 저장되는 파일명은 그 public 클래스명에 .java 라는 확장명만 붙이면 된다. (Java 소스 코드에 public 클래스가 있을 시에는 파일명 붙이기는 언제나 이런 규칙이 적용된다.) Java 언어는 C 언어 처럼 대소문자 구별을 엄격히 하므로 파일명이나 클래스명에서도 대소문자 구별을 철저히 지켜야 한다. Parent는 부모 클래스이고 Child는 Parent에서 상속 받은 자식 클래스이다. 컴파일은 javac -d . TestSubclassing.java 의 명령으로 하나만 컴파일하면 남은 두 개도 같이 컴파일된다. /..

컨솔에 삼각형 출력하는 여러 가지 메소드 비교 with Java

콘솔에 삼각형 * * * * * * * * * * * * * * * ***************** 을 출력하는 Java 애플리케이션을 만들어 보자. 이런 소스 코드의 작성은 학원이나 학교에서 프로그래밍 입문자에게 과제로 많이 주어지는 것 중의 하나이다. 코끼리를 보거나 만진 사람들이 저마다 그 생김새를 말할 때 제각기 다르게 표현할 수 있듯이 이런 소스 코드의 작성도 알고 보면 얼마든지 많은 방법이 있을 것이다. 여기서는 쉬운 코드 부터 작성해 보고 차츰차츰 소스를 바꾸어 가면서 Java 프로그래밍의 기초부분을 터득해 보기로 한다. 삼각형 출력 부분을 main() 메소드에서 하지 않고, 별도로 구현된 printTriange() 메소드에서 하기로 한다. 이 메소드는 public 이고 static인 메소드..

삼각형 출력 예제를 통한 여러 가지 소스 비교 with Java

콘솔에 삼각형 * * * * * * * * * * * * * * * ***************** 을 출력하는 Java 애플리케이션을 만들어 보자. 이런 소스 코드의 작성은 학원이나 학교에서 프로그래밍 입문자에게 과제로 많이 주어지는 것 중의 하나이다. 코끼리를 보거나 만진 사람들이 저마다 그 생김새를 말할 때 제각기 다르게 표현할 수 있듯이 이런 소스 코드의 작성도 알고 보면 얼마든지 많은 방법이 있을 것이다. 여기서는 쉬운 코드 부터 작성해 보고 차츰차츰 소스를 바꾸어 가면서 Java 프로그래밍의 기초부분을 터득해 보기로 한다. 우선 첫번 째로 다음 예제는 컨솔 출력 메소드 System.out.println()의 사용법만 알면 누구나 코딩할 수 있는 매우 단순한 소스 코드이다. 삼각형 출력 예제 1..

7비트 ASCII 코드표 만들기 예제 with Java

ASCII(애스키)란 American Standard Code for Information Interchange의 줄임글로서, 영문자에 기초한 문자 인코딩이다. 이 문자 인코딩에는 C0 제어문자(C0 control character)도 포함되어 있다. ( 참고: ASCII - Wikipedia, the free encyclopedia ) 다음은 7bit ASCII 코드표를 만들어 보여주는 자바 소스 코드이다. 소스 코드 중에 진법변환에 필요한 메소드 convertAtoI(String, radix) convertItoA(long, radix) 의 구현도 포함되어 있다. /* * Filename: MakeAsciiTableApp.java * Make a table of ascii codes. * * Comp..

진법(radix) 표 만들기 예제 with Java

컴퓨터 프로그래밍에서 꼭 알아두어야 할 주요 진법은 당연히 10진법, 2진법, 8진법, 16진법이다. 다음은 0부터 15까지의 정수를 10진법, 2진법, 8진법, 16진법의 표로 만들어 보여주는 자바 소스 코드이다. 진법 변환에 필요한 메소드로는 자바에 Integer.parseInt(String, int radix); Long.toString(long, int radix); 가 이미 있지만, 여기에 준하는 메소드 convertAtoI(String, radix) convertItoA(long, radix) 를 자체 작성하여 사용하였다. /* * Filename: MakeRadixTableApp.java * Show the radix table with 10-, 2-, 8-, 16-radices. * * C..

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

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

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

다음은 이차방정식 x^2 - x - 1 = 0 의 양의 근 즉 황금비율(golden ratio)을 구하는 자바 애플리케이션 소스이다. 황금비율을 구하는 비례방정식은 1 : x = x : (x+1) 이며, 이를 이차방정식으로 표현한 것이 x^2 - x - 1 = 0 이다. See: Golden ratio - Sajun.org /* * Filename: TestGoldenRatioApp.java * 황금률(즉, 이차방정식 x^2 - x - 1 = 0 의 양의 근)을 계산한다. * * Compile: javac -d . TestGoldenRatioApp.java * * Execute: java TestGoldenRatioApp * * Date: 2008/03/24 * Author: PH Kim [ pkim (..

현재 시각 알아내기 for Java

현재 시각을 컨솔에 보여주는 간단한 애플리케이션의 Java 언어 소스 코드이다. UTC란 1970년 1월 1일 0시 0분 0초를 기준으로 하여 경과된 초 단위의 총 시간을 의미한다. * UTC(Universal Time Coordinated, 협정세계시, 協定世界時) /* * Filename: TestCTimeApp.java * * Compile: javac -d . TestCTimeApp.java * * Execute: java TestCTimeApp */ import java.util.Calendar; import java.util.GregorianCalendar; public class TestCTimeApp { static String[] weekNames = { "일", "월", "화", "수"..