반응형

2.8> 2차원 평면에서 하나의 직사각형은 두 점으로 표현된다. (50, 50)(100, 100)의 두 점으로 이루어진 직사각형이 있다고 하자. 이때 키보드로부터 다른 직사각형을 구성하는 두 점 (x1. y1), (x2, y2)를 입력 받아 두 개의 직사각형이 서로 충돌하는지(겹치는지) 판별하는 프로그램을 작성하라.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package HW1_JAVA;
import java.util.Scanner// 스캐너 클래스의 경로 명이 java.util.Scanner
class Dot{ //Dot class 선언
    void testing_dot(int x1,int y1,int x2,int y2){ //testing_dot 메소드 선언 int형변수 x1,y1,x2,y2
        if(((x1>=50&&x1<=100)&&(y1>=50&&y1<=100))|| //x1이 50이상 100이하이고 y1이 50이상 100이하 혹은
        ((x2>=50&&x2<=100)&&(y2>=50&&y2<=100))|| //x2가 50이상 100이하 y2가 50이상 100이하 혹은
        ((x1<=50&&y1<=50)&&(x2>=100&&y2>=100))) //x1과 y1이 50이하이고 x2와 y2가 100이상
        System.out.println("사각형이 겹칩니다."); // 이면 사각형이 겹친다.
        else // 이외의 경우 사각형이 겹치지 않는다라는 string을 출력
            System.out.println("사각형이 겹치지 않습니다.");
    }}
public class Rectangle {  //Rectangle 클래스 선언
    public static void main(String[] args) {
        Scanner s=new Scanner(System.in); //레퍼런스 변수 s와 Scanner 클래스의 객체 생성
        Dot d=new Dot(); //레퍼런스 변수 d와 Dot 클래스의 객체 생성
        int x1,y1,x2,y2; //int형 변수 x1,y1,x2,y2 생성
        while(true){ //무한루프
        System.out.print("두점 (x1,y1), (x2,y2)의 좌표를 입력하세요>>(9999 4번 입력시 종료)");
        x1=s.nextInt(); y1=s.nextInt(); x2=s.nextInt(); y2=s.nextInt(); 
//x1,y1,x2,y2를 인트형으로 입력해줌
        if(x1==9999&&x2==9999&&y2==9999&&y1==9999)break
// x1,y1,x2,y2가 모두 9999일시 루프 탈출
        d.testing_dot(x1, y1, x2, y2);} //Dot class의 객체를 가리키는 d를 통해 testing_dot 메소드 호출
}}
 
cs




반응형

'컴퓨터 & 프로그래밍 & 전자공학 > JAVA' 카테고리의 다른 글

정수 오름차순 정렬기  (0) 2017.06.18
하위 문자 모두 출력하기  (0) 2017.06.18
윤년 판별기  (0) 2017.06.18
삼각형 만들기  (0) 2017.06.18
369 게임  (0) 2017.06.18

+ Recent posts