Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

이차 방정식의 모든 근을 찾는 Java 프로그램

<시간/>

이 기사에서는 Java에서 이차 방정식의 근을 계산하는 방법을 이해합니다. 이차 방정식은 2차의 대수적 표현입니다. 즉, 실수와 허수라는 두 가지 결과를 가집니다.

아래는 동일한 데모입니다 -

ax2 + bx + c −

형식의 이차 방정식이 주어지면
3가지 경우가 있습니다:b2 <4*a*c - 근이 실수가 아닙니다. 즉, 복소수입니다.b2 =4*a*c - 근이 실수이고 두 근이 동일합니다.b2> 4*a*c - 뿌리는 실제이고 두 뿌리가 다릅니다.

입력

입력이 -

라고 가정합니다.
a =1, b =2, c =3

출력

원하는 출력은 -

이차 방정식의 근은 다음과 같습니다.root_1 =-1.00+1.41iroot_2 =-1.00-1.41i

알고리즘

Step1- StartStep 2- 6개의 이중 값 선언:a, b, c, root_1, root_2, quadratic_equationStep 3- 사용자에게 a,b,c 이중 값을 입력하라는 메시지 표시/ 이중 값 정의Step 4- 값 읽기Step 5- for 루프에서 quadratic_equation 변수의 값이 0보다 큰지 확인하고, true이면 이차 수식을 사용하여 값을 찾아 변수에 할당합니다. 6단계 - 결과 표시 7단계 - 중지

예시 1

여기에서 입력은 프롬프트에 따라 사용자가 입력하고 있습니다. 우리코딩 그라운드 도구에서 이 예제를 라이브로 사용해 볼 수 있습니다. 이차 방정식의 모든 근을 찾는 Java 프로그램 .

 import java.util.Scanner;public class QuadraticEquation { public static void main(String[] args) { 더블 a, b, c, root_1, root_2, quadratic_equation; double real_number, imaginary_number; System.out.println("필수 패키지를 가져왔습니다."); 스캐너 my_scanner =새로운 스캐너(System.in); System.out.println("스캐너 개체가 정의되었습니다. "); System.out.print("값을 입력하세요 :"); a =my_scanner.nextDouble(); System.out.print("b의 값을 입력하세요 :"); b =my_scanner.nextDouble(); System.out.print("c의 값을 입력하세요 :"); c =my_scanner.nextDouble(); 이차 방정식 =b*b - 4*a*c; if (quadratic_equation> 0) { root_1 =(-b + Math.sqrt(quadratic_equation)) / (2 * a); root_2 =(-b - Math.sqrt(quadratic_equation)) / (2 * a); System.out.format("root_1 =%.2f 및 root_2 =%.2f", root_1, root_2); } else if (quadratic_equation ==0) { root_1 =root_2 =-b / (2 * a); System.out.format("root_1 =root_2 =%.2f;", root_1); } else { 실수 번호 =-b / (2 * a); imaginary_number =Math.sqrt(-quadratic_equation) / (2 * a); System.out.println("2차 방정식의 근은 다음과 같습니다."); System.out.printf("root_1 =%.2f+%.2fi", real_number, imaginary_number); System.out.printf("\nroot_2 =%.2f-%.2fi", real_number, imaginary_number); } }}

출력

필수 패키지를 가져왔습니다스캐너 개체가 정의되었습니다.a 값을 입력하십시오. 1b 값을 입력하십시오. 2c 값을 입력하십시오. 3이차 방정식의 근은 다음과 같습니다.root_1 =-1.00+1.41iroot_2 =-1.00-1.41i 

예시 2

여기서 정수는 이전에 정의되었으며 그 값은 콘솔에 액세스되어 표시됩니다.

공개 클래스 QuadraticEquation { 공개 정적 무효 메인(String[] args) { 더블 a, b, c, root_1, root_2, quadratic_equation; double real_number, imaginary_number; a =1; b =2; c =3; System.out.println("세 숫자는 " +a +", " +b +" 및 " +c로 정의됩니다. 이차 방정식 =b*b - 4*a*c; if (quadratic_equation> 0) { root_1 =(-b + Math.sqrt(quadratic_equation)) / (2 * a); root_2 =(-b - Math.sqrt(quadratic_equation)) / (2 * a); System.out.format("root_1 =%.2f 및 root_2 =%.2f", root_1, root_2); } else if (quadratic_equation ==0) { root_1 =root_2 =-b / (2 * a); System.out.format("root_1 =root_2 =%.2f;", root_1); } else { 실수 번호 =-b / (2 * a); imaginary_number =Math.sqrt(-quadratic_equation) / (2 * a); System.out.println("2차 방정식의 근은 다음과 같습니다."); System.out.printf("root_1 =%.2f+%.2fi", real_number, imaginary_number); System.out.printf("\nroot_2 =%.2f-%.2fi", real_number, imaginary_number); } }}

출력

세 숫자는 1.0, 2.0 및 3.0으로 정의됩니다. 이차 방정식의 근은 다음과 같습니다.root_1 =-1.00+1.41iroot_2 =-1.00-1.41i