반응형


 에미넴 방한 소식에 청심환 먹고 티켓팅 성공한게 엊그제 같은데, 계속 공부 중인 자바 공부 계속 해야되지 않겠습니까? ㅎㅎ 그래서 학원에서 배운 예제 중 하나를 올려봅니다.


1) 이번 예제는 자신이 입력한 숫자에 대한 구구단을 메세지창으로 띄우는 소스코드입니다.

javax.swing.JOptionPane을 임포트하여 메시지 창을 쓸 수 있도록 해두고서,

메세지 창에 숫자를 입력하면, 그 숫자의 구구단이 출력되는 방법입니다.


2) 원래 이 프로그램은 main() 클래스 안에 모든 기능을 한꺼번에 구현해도 됩니다.

하지만 이번 소스코드에서는 기능별로 클래스 및 메소드를 나눈 뒤, 호출하는 방식으로 구현해봤습니다. 즉, 객체지향을 중시하는 자바 언어의 특성을 익혀보고자 좀 복잡하게(?) 나눴습니다. 하지만 적응되고나면 오히려 더 간편하고 덜 번거롭지 않을까요? 한번만 구현하고 메소드 호출하는 식으로 작성할 수 있기 때문에...



 이제 슬슬 해 봅시다!


 ☞ 1. JAVA 소스코드


import javax.swing.JOptionPane; // 입력 및 메시지 창 등을 띄울 수 있음.

class gugudan {           // guguan 클래스 생성
	
	// 변수 선언
	private int a1; // 구구단 곱할 값을 저장하는 변수. 사용자에게 입력받아 저장.
	private String res1=""; // 구구단 출력값 저장 및 출력용 String 변수
	

// a1 값 1로 초기화 시키는 메소드.
// 근데 막상 짜보니 쓸일 없어보인다는... -_-;;
	public void cal(){
		this.a1 = 1;
	}
	
	public gugudan(int a1){  // 사용자에게 입력 받은 값을 this를 써서 저장(?)
		this.a1 = a1;
	}
	
	public String get99dan(){  // 반복문 for문을 사용하여 입력받은 {a1값 x 카운터 i값}으로 계산
		
		for(int i=1; i<=9; i++){
			this.res1 += this.a1 + " * " + i + " = " + (this.a1 * i) + "\n";
		}
		return res1;
	}
	
} // gugudan class 종료


public class New99dan {

	public static void main(String[] args) {
					
		gugudan a1 = new gugudan(getNumber());  // getNumber()를 통해 값 받아서 객체 a1 생성
		JOptionPane.showMessageDialog(null, a1.get99dan());
// 구구단 계산값을 메세지 창을 통해 출력

	} // main() 메소드 종료
	
	
	// 사용자에게 입력값 받아서 값을 변환
	public static int getNumber(){
		int a = Integer.parseInt(JOptionPane.showInputDialog("구하고싶은 구구단 숫자를 입력하세요"));
		return a;
	}
	
}


소스코드 다운받기 (메모장) :


SourceCode_99dan.txt



 ☞ 2. 실행 결과




 위 스크린샷 보시면 아시겠지만, 만약 9단을 구하고 싶으시면 9를 입력하시면 됩니다.

그럼 오른쪽 스샷처럼 9단이 출력됩니다. 십단위, 백단위 구분 안합니다. 어떻게 별도의 설명을 붙였으면 좋겠는데, 소스코드만 낼름 올려놓고 갑니다. (후다닥~)


반응형
반응형