1. 이차방정식 계수를 입력받아 근을 출력하는 프로그램을 작성합니다.
문제 실근, 중근, 허근인지 판별
<소스>
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 | package Hello; //20141648_전성현 import java.util.*; public class QuadraticEq { public static void main(String[] args) { double a, b ,c; // 이차방정식의세계수 double r1, r2; // 이차방정식의두근 double s1, s2; // 허근 Scanner input = new Scanner(System.in); System.out.print("a입력:"); a = input.nextDouble(); System.out.print("b입력:"); b = input.nextDouble(); System.out.print("c입력:"); c = input.nextDouble(); double disc = b * b – 4.0 * c; // 판별식 double sqr = Math.sqrt(disc); if ( disc > 0 ) { r1 = ( -b + sqr ) / ( 2.0 * a ); r2 = ( -b - sqr ) / ( 2.0 * a ); System.out.println ("이차방정식은 두 근을 가집니다. 판별식 " + disc + " > 0"); System.out.println ("근은 " + r1); System.out.println ("근은 " + r2); } else if ( disc == 0 ) // 중근 { r1 = -b / (2.0 * a); System.out.println ("이차방정식은 중근을 가집니다. 판별식 " + disc + " = 0"); System.out.println ("중근은 " + r1); } else // 허근 { sqr = Math.sqrt(-disc); r1 = -b / (2.0 * a); r2 = -b / (2.0 * a); s1 = sqr/ (2.0 * a); s2 = -sqr/ (2.0 * a); System.out.println ("이차방정식은 허근을 가집니다. 판별식 " + disc + " < 0"); System.out.println ("허근r1은 " + r1 + "+" + s1 + "i"); System.out.println ("허근r2는 " + r2 + "+" + s2 + "i"); } } } |
< 실행결과 >
1. 실근을 구하는 경우
2. 중근을 구하는 경우
3. 허근을 구하는 경우
'대학교 > 2.객체지향프로그래밍_JAVA' 카테고리의 다른 글
Tic_Tac_Toe(틱택토) 게임 (0) | 2017.04.21 |
---|---|
극장 예매 시스템 (0) | 2017.04.21 |
난수발생을 이용해 숫자 찾기 (0) | 2017.04.21 |
현재 시간에 따라 출력 (0) | 2017.04.21 |
1부터 10까지의 합 (0) | 2017.04.21 |