반응형
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 |