본문 바로가기
STUDY/Java

[Java] 명품 JAVA 프로그래밍 : 제2장 자바 기본 프로그래밍 실습문제

by devohda 2020. 8. 26.

 

 

1번

 

소스 코드

 

import java.util.Scanner;

public class WonToDollar {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);
		
		final int dollar = 1100;
		System.out.print("원화를 입력하세요(단위 원)>>");
		int won = scanner.nextInt();
		System.out.println(won+"원은 "+"$"+(double)won/(double)dollar+"입니다.");
		
		scanner.close();
	}

}

 

 

 

 

2번

 

소스 코드

 

import java.util.Scanner;

public class IsSameDigit {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);

		System.out.print("2자리수 정수 입력(10~99)>>");
		int num = scanner.nextInt();

		// num%10 은 1의 자리(10으로 나눈 나머지), num/10은 10의 자리(10으로 나눈 몫)
		if (num % 10 == num / 10) {
			System.out.println("Yes! 10의 자리와 1의 자리가 같습니다.");
		} else {
			System.out.println("No! 10의 자리와 1의 자리가 다릅니다.");
		}
		scanner.close();
	}

}

 

 

 

 

3번

 

소스 코드

 

import java.util.Scanner;

public class MoneyCount {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);

		System.out.print("금액을 입력하시오>>");
		int money = scanner.nextInt();

		int fiftyThousand = money / 50000;
		int tenThousand = money % 50000 / 10000;
		int thousand = money % 10000 / 1000;
		int hundred = money % 1000 / 100;
		int fifty = money % 100 / 50;
		int ten = money % 50 / 10;
		int one = money % 10;
		
		System.out.println("오만원권 "+fiftyThousand+"매");
		System.out.println("만원권 "+tenThousand+"매");
		System.out.println("천원권 "+thousand+"매");
		System.out.println("백원 "+hundred+"개");
		System.out.println("오십원 "+fifty+"개");
		System.out.println("십원 "+ten+"개");
		System.out.println("일원 "+one+"개");
		scanner.close();
	}

}

 

 

 

 

4번

 

소스 코드

 

import java.util.Scanner;

public class FindMiddle {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);

		System.out.print("정수 3개 입력>>");

		int num1, num2, num3;
		num1 = scanner.nextInt();
		num2 = scanner.nextInt();
		num3 = scanner.nextInt();

		System.out.print("중간 값은 ");
		if ((num1 >= num2 && num1 <= num3) || (num1 >= num3 && num1 <= num2)) {
			System.out.println(num1);
		} else if ((num2 >= num1 && num2 <= num3) || (num2 >= num3 && num2 <= num1)) {
			System.out.println(num2);
		} else if ((num3 >= num1 && num3 <= num2) || (num3 >= num2 && num3 <= num1)) {
			System.out.println(num3);
		}
		scanner.close();
	}

}

 

 

 

 

5번

 

소스 코드

 

import java.util.Scanner;

public class IsMakeTriangle {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);

		System.out.print("정수 3개를 입력하시오>>");

		int side1, side2, side3;
		side1 = scanner.nextInt();
		side2 = scanner.nextInt();
		side3 = scanner.nextInt();

		if (side1 < side2 + side3 || side2 < side1 + side3 || side3 < side1 + side2) {
			System.out.println("삼각형이 됩니다");
		} else {
			System.out.println("삼각형이 안 됩니다");
		}
		scanner.close();
	}

}

 

 

 

 

6번

 

소스 코드

 

import java.util.Scanner;

public class Game369 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);

		System.out.print("1~99 사이의 정수를 입력하시오>>");

		int num;
		num = scanner.nextInt();

		if (num / 10 == 3 || num / 10 == 6 || num / 10 == 9) {
			if (num % 10 == 3 || num % 10 == 6 || num % 10 == 9) {
				System.out.println("박수짝짝");
			} else {
				System.out.println("박수짝");
			}
		} else if (num % 10 == 3 || num % 10 == 6 || num % 10 == 9) {
			System.out.println("박수짝");
		} else {
			System.out.println(num + "!");
		}
		scanner.close();
	}

}

 

 

 

 

7번

 

소스 코드

 

import java.util.Scanner;

public class IsInSquare {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);

		System.out.print("점 (x,y)의 좌표를 입력하시오>>");
		int x, y;
		x = scanner.nextInt();
		y = scanner.nextInt();

		if ((100 < x && x < 200) && (100 < y && y < 200)) {

			System.out.println("(" + x + "," + y + ")는 사각형 안에 있습니다.");

		}
		scanner.close();
	}

}

 

 

 

 

8번

 

소스 코드

 

import java.util.Scanner;

public class IsCrash {

	public static boolean inRect(int x, int y, int rectx1, int recty1, int rectx2, int recty2) {
		if ((x>= rectx1 && x <= rectx2) && (y >= recty1 && y <= recty2)) {
			return true;
		}
		else return false;
	}

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);

		System.out.print("점 (x1,y1)의 좌표를 입력하시오>>");
		int x1, y1;
		x1 = scanner.nextInt();
		y1 = scanner.nextInt();

		System.out.print("점 (x2,y2)의 좌표를 입력하시오>>");
		int x2, y2;
		x2 = scanner.nextInt();
		y2 = scanner.nextInt();
		
		if (inRect(x1, y1, 100, 100, 200, 200) && inRect(x2, y2, 100, 100, 200, 200)) {
			System.out.println("직사각형과 충돌하지 않습니다.");
		}else {
			System.out.println("직사각형과 충돌합니다.");
		}

		scanner.close();
	}

}

 

 

 

 

9번

 

소스 코드

 

import java.util.Scanner;

public class IsInCircle {

	public static boolean inCircle(int x, int y, int circleX, int circleY, double radius) {
		if (Math.sqrt(Math.pow((double) (circleX - x), 2.0) + Math.pow((double) (circleY - y), 2.0)) <= radius) {
			return true;
		} else {
			return false;
		}
	}

	public static void main(String[] args) {

		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);

		System.out.print("원의 중심과 반지름 입력>>");
		int circleX, circleY;
		double radius;

		circleX = scanner.nextInt();
		circleY = scanner.nextInt();
		radius = scanner.nextDouble();

		System.out.print("점 입력>>");
		int x, y;
		x = scanner.nextInt();
		y = scanner.nextInt();

		if (inCircle(x, y, circleX, circleY, radius)) {
			System.out.println("점 (" + (double) x + "," + (double) y + ")는 원 안에 있다.");
		}
		scanner.close();
	}

}

 

 

 

 

10번

 

소스 코드

 

import java.util.Scanner;

public class IsOverlap {

	public static double distance(int x1, int y1, int x2, int y2) {
		return Math.sqrt(Math.pow(x1 - x2, 2) + Math.pow(y1 - y2, 2));
	}

	public static void main(String[] args) {

		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);
		
		System.out.print("첫번째 원의 중심과 반지름 입력>>");
		int x1, y1, radius1;
		x1 = scanner.nextInt();
		y1 = scanner.nextInt();
		radius1 = scanner.nextInt();

		System.out.print("두번째 원의 중심과 반지름 입력>>");
		int x2, y2, radius2;
		x2 = scanner.nextInt();
		y2 = scanner.nextInt();
		radius2 = scanner.nextInt();

		if (distance(x1, y1, x2, y2) < radius1 + radius2) {
			System.out.println("두 원은 서로 겹친다.");
		} else {
			System.out.println("두 원은 서로 안 겹친다.");
		}

		scanner.close();
	}

}

 

 

 

 

11번

 

소스 코드

 

if-else문 이용

import java.util.Scanner;

public class Weather {

	public static void main(String[] args) {

		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);

		System.out.print("달을 입력하세요(1~12)>>");
		int weather = scanner.nextInt();

		if (3 <= weather && weather <= 5) {
			System.out.println("봄");
		} else if (6 <= weather && weather <= 8) {
			System.out.println("여름");
		} else if (9 <= weather && weather <= 11) {
			System.out.println("가을");
		} else if (weather == 12 || (1 <= weather && weather <= 2)) {
			System.out.println("겨울");
		} else {
			System.out.println("잘못입력");
		}

		scanner.close();
	}

}

 

 

switch문 이용

import java.util.Scanner;

public class Weather {

	public static void main(String[] args) {

		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);
		
		System.out.print("달을 입력하세요(1~12)>>");
		int weather = scanner.nextInt();

		switch (weather) {
			case 3:
			case 4:
			case 5: {
				System.out.println("봄");
				break;
			}
			case 6:
			case 7:
			case 8: {
				System.out.println("여름");
				break;
			}
			case 9:
			case 10:
			case 11: {
				System.out.println("가을");
				break;
			}
			case 12:
			case 1:
			case 2: {
				System.out.println("겨울");
				break;
			}
			default: {
				System.out.println("잘못입력");
			}
		}
		scanner.close();
	}

}

 

 

 

 

12번

 

소스 코드

 

import java.util.Scanner;

public class Calculator {

	public static void main(String[] args) {

		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);

		System.out.print("연산>>");
		double num1, num2;
		String operator;

		num1 = scanner.nextDouble();
		operator = scanner.next();
		num2 = scanner.nextDouble();

		if (operator.equals("/") && num2 == 0) {
			System.out.println("0으로 나눌 수 없습니다.");
		} else {
			System.out.print(num1 + operator + num2 + "의 계산 결과는 ");
			if (operator.equals("+")) {
				System.out.println(num1 + num2);
			} else if (operator.equals("-")) {
				System.out.println(num1 - num2);
			} else if (operator.equals("*")) {
				System.out.println(num1 * num2);
			} else if (operator.equals("/")) {
				if (num2 == 0) {

				} else {
					System.out.println(num1 / num2);
				}
			}
		}

		scanner.close();
	}

}

 

 

댓글