1. MyMath class의 두 메서드에 “정수 제곱 실행” 및 “실수 제곱 실행 문장 추가하고 키보드에서 수를 입력
< 소스 >
- MyMath
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | public class MyMath { int square(int i) { System.out.println("정수 " + i + "를 제곱합니다"); return i*i; } double square(double i) { System.out.println("실수 " + i + "를 제곱합니다"); return i*i; } } | cs |
- MyMathTest
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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | import java.util.*; public class MyMathTest { public static void main(String[] args) { Scanner scan = new Scanner(System.in); MyMath obj = new MyMath(); String a; while(true) { System.out.print("제곱을 할 정수를 입력하세요. "); a = scan.next(); if(isInteger(a) == true) { int b = Integer.parseInt(a); System.out.println(obj.square(b)); } else { System.out.print("정수를 다시 입력합니다. \n"); continue; } System.out.print("제곱을 할 실수를 입력하세요. "); a = scan.next(); if(isDouble(a) == true) { double b = Double.parseDouble(a); System.out.println(obj.square(b)); break; } else { System.out.print("실수를 다시 입력합니다. "); continue; } } } public static boolean isInteger(String num) { try { Integer.parseInt(num); // int 형으로 변환해보고 return true; // 이상없으면 true를 리턴 } catch (NumberFormatException e) { return false; // 이상 있으면 false를 리턴 } } // 이 함수는 string이 double형 인지를 판별, 원리는 isInteger 메써드와 같음 public static boolean isDouble(String num) { try { Double.parseDouble(num); return true; } catch (NumberFormatException e) { return false; } } } | cs |
< 실행 결과 >
일단 문자열을 받아 isInteger와 isDouble를 이용해(불리안을 이용해서 true, false를 이용) 정수면 obj.square(b)를 넣어서 출력을 했습니다.
그리고 MyMath.java를 보면 정수면 정수 i를 제곱합니다. 를 출력을 같이 했습니다.
만약 정수가 아니면 다시 정수를 입력하라고 continue도 썼습니다.
'대학교 > 2.객체지향프로그래밍_JAVA' 카테고리의 다른 글
OOP.종합설계 (0) | 2017.06.16 |
---|---|
[JAVA] 이벤트 그래픽 (0) | 2017.06.03 |
지뢰찾기(주변 숫자 탐색) (0) | 2017.04.21 |
Tic_Tac_Toe(틱택토) 게임 (0) | 2017.04.21 |
극장 예매 시스템 (0) | 2017.04.21 |