특별한딸기이야기
자바 코드(숫자 바꾸기) 본문
// 숫자를 입력받아 반대로 출력하는 프로그램
// 예 : 123456 -> 654321
package com.tistory.special0strawberry;
import java.util.*;
public class Integer_Print
{
private int x;
private int division;
private int[] result;
private Scanner scan;
// 생성자
// 내용 : 변수의 초기화
public Integer_Print()
{
setX(0);
setDivision(1);
scan = new Scanner(System.in);
}
// 입력값 : 배열의 크기
// 내용 : result 배열의 크기를 정한다.
public void Set_Result_Length(int s)
{
result = new int[s];
}
// 입력값 : 배열 위치의 값, 배열의 위치
// 내용 : 배열의 위치에 맞는 값을 넣는다.
public void Set_Result_Position(int n, int p)
{
result[n] = p;
}
// 반환값 : 배열의 크기
// 내용 : 배열의 크기를 반환한다.
public int Get_Result_Length()
{
return result.length;
}
// 입력값 : 배열의 위치
// 반환값 : result 배열의 위치의 값
// 내용 : 배열 중에서 위치에 맞는 값을 반환한다.
public int Get_Result_Position(int p)
{
return result[p];
}
// 입력값 : 정수형 변수 i
// 내용 : x의 값을 i로 정한다.
public void setX(int i)
{
x = i;
}
// 반환값 : 정수형 값
// 내용 : x의 값을 반환한다.
// 반환값 : x의 값
// 내용 : x의 현재값을 반환한다.
public int getX()
{
return x;
}
// 입력값 : 정수형 변수 d
// 내용 : division의 값을 d로 정한다.
// 입력값 : 정수값
// 내용 : division의 값을 정수값으로 정한다.
public void setDivision(int d)
{
division = d;
}
// 반환값 : 정수형 값
// 내용 : division의 값을 반환한다.
// 반환값 : division의 값
// 내용 : division의 값을 반환한다.
public int getDivision()
{
return division;
}
// 내용 : 정수 값을 키보드로 부터 받아온다.
public int Scan()
{
int result;
System.out.print("정수의 값을 입력하세요 : ");
result = scan.nextInt();
return result;
}
// 내용 : division의 값을 계산한다.
public void Cal_Division()
{
int temp;
int temp_1;
temp = getX();
temp_1 = getDivision();
while(true)
{
if((temp / temp_1) == 0)
{
break;
}
else
{
temp_1 *= 10;
}
}
setDivision(temp_1);
}
// 내용 : 값이 들어갈 배열의 크기를 계산한다.
public void Cal_Result_Length()
{
Set_Result_Length((int)Math.log10(getDivision()) + 1);
}
// 내용 : 값을 배열에 집어 넣는다.
public void Input_Result()
{
int temp, x_value, input_value, number, cal_number;
x_value = getX();
number = 0;
cal_number = 0;
for(temp = Get_Result_Length() - 1; temp > 0; temp--)
{
// 배열에 들어갈 값 계산
input_value = x_value % 10;
x_value /= 10;
// 정수값 계산
cal_number *= 10;
cal_number += input_value;
Set_Result_Position(number, input_value);
Set_Result_Position(this.Get_Result_Length() - 1, cal_number);
number++;
}
}
// 내용 : result배열의 값을 화면에 출력한다.
public void Print_Result()
{
int length;
System.out.println("number : " + this.getX());
System.out.println("result : " + this.Get_Result_Position(this.Get_Result_Length() -1));
for(length = 0; length < this.Get_Result_Length() - 1; length++)
{
System.out.println(length + " : " + this.Get_Result_Position(length));
}
}
// 내용 : 프로그램을 시작한다.
public void Start()
{
setX(Scan());
Cal_Division();
Cal_Result_Length();
Input_Result();
Print_Result();
}
}
'딸기 공부방 > JAVA' 카테고리의 다른 글
양력을 음력으로 바꾸는 소스 (0) | 2009.04.28 |
---|---|
scjp 1.4 지료 (0) | 2008.07.03 |
자바 코드(병합 프로그램_선택 정렬 추가) (0) | 2008.05.24 |
자바 코드(병합 프로그램) (0) | 2008.05.22 |