-----------------------------------------------------------------------------------
1번째 예제
//문제1) 프린트, 단면,양면 문제
Scanner scan = new Scanner(System.in);
int amount = 100;
int count = 0;
int number = 0;
String input="";
while(!(amount==0)){
info(amount);
input=info2(input);
count=info3(count,input);
amount = info4(amount,count,input);
}
System.out.println("프린트 종료");
}
public static void info(int amount) {
System.out.println("=============================");
System.out.println("현재 남은 용지는 : " + amount);
System.out.println("=============================");
System.out.println();
System.out.println();
System.out.println();
}
public static String info2(String input) {
Scanner scan = new Scanner(System.in);
System.out.println("======프린트내용입력 하세요===");
input = scan.nextLine();
System.out.println();
System.out.println();
return input;
}
public static int info3(int count,String input) {
Scanner scan = new Scanner(System.in);
System.out.println(input+"(을)를 몆번 출력하시겠습니까?");
count = scan.nextInt();
System.out.println();
System.out.println();
return count;
}
public static int info4(int amount,int count,String input) {
Scanner scan = new Scanner(System.in);
System.out.println("1.단면프린트 2.양면프린트 3.이전으로돌아가기");
int number = scan.nextInt();
if(number == 1) {
amount =section(amount,count,input);
return amount;
}else if(number == 2) {
amount -=bothSides(amount,count,input);
return amount;
}else if(number == 3) {
return amount;
}
return amount;
}
//단면
public static int section (int amount,int count,String input) {
amount -=count;
System.out.println("현재 남은 용지는 : " + amount);
System.out.println("단면 프린트 중입니다.");
for(int i = 1; i<=count; i++) {
System.out.println("내용 : "+input );
System.out.println((i)+"면을 인쇄합니다.");
}
return amount;
}
//양면
public static int bothSides (int amount,int count,String input) {
if(count%2==0) {
amount -= (count/2);
System.out.println("현재 남은 용지는 : " + amount);
System.out.println("양면 프린트 중입니다.");
for(int i = 1; i<=count; i++) {
System.out.println("내용 : "+input );
System.out.println((i)+"면을 인쇄합니다.");
}
return amount;
}else {
amount -= (count/2)+1;
System.out.println("현재 남은 용지는 : " + amount);
System.out.println("양면 프린트 중입니다.");
for(int i = 1; i<=count; i++) {
if(i%2==1) {
System.out.println("내용 : "+input );
System.out.println((i)+"면을 인쇄합니다.");
}else {
System.out.println("내용 : "+input );
System.out.println((i)+"면을 인쇄합니다.");
}
}
return amount;
}
'1. JAVA > 4). 자바_실전_이클립스' 카테고리의 다른 글
자바실전_Day_09_07(가위바위보) (1) | 2024.01.11 |
---|---|
자바실전_Day_09_06(프린트만들기_02) (1) | 2024.01.11 |
자바실전_Day_09_04(스무고개) (0) | 2024.01.11 |
자바실전_Day_09_03(암호화의원리) (0) | 2024.01.11 |
자바실전_Day_09_02(오버로딩예제) (0) | 2024.01.11 |