Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 이차방정식의 해의 개수를 구하는 프로그램

<시간/>

이 문제에서 a,b 및 c가 상수인 ax2 + bx + c 유형의 이차 방정식이 제공됩니다. 우리의 임무는 C++의 이차 방정식에서 솔루션의 수를 찾는 프로그램을 만드는 것입니다.

문제 설명 − 여기에서 최대 2개의 해를 가질 수 있는 이차 방정식의 해의 수를 찾아야 합니다.

문제를 이해하기 위해 몇 가지 예를 들어보겠습니다.

예시 1:

입력 − 3x 2 + 7x + 4

출력 - 2

설명 - 방정식의 두 해는 1과 4/3입니다.

예시 2:

입력 − x 2 - 4x + 4

출력 − 1

설명 - 방정식의 해는 2입니다.

입력 − 2x 2 + 2x + 2

출력 - 0

설명:방정식에는 해가 없습니다.

해결 방법:

해의 개수를 구하려면 판별식(D)의 값을 사용하여 구하는 이차 방정식의 해의 성질이 필요합니다.

방정식의 근은 공식으로 제공됩니다.

= −𝑏 ± √𝑏.
D = ( (b^2) - (4*a*c) )

따라서 판별식의 값은 이차 방정식의 근의 수를 나타냅니다.

  • D =0인 경우 솔루션의 수는 1입니다.

  • D> 0인 경우 솔루션의 수는 2입니다.

  • D <0이면 해의 개수는 0입니다. 음수의 근의 값은 허수이므로

알고리즘:

  • 1단계 − D, D =((b^2) - 4*a*c)의 값을 찾습니다.

  • 2단계 - if(D> 0)인 경우 2개의 솔루션을 출력합니다.

  • 3단계 - if(D =0)인 경우 1개의 솔루션을 출력합니다.

  • 4단계 - if(D <0), 0 솔루션을 출력

#include <iostream>
using namespace std;
int checkSolution(int a, int b, int c) {
   if (((b * b) - (4 * a * c)) > 0)
      return 2;
   else if (((b * b) - (4 * a * c)) == 0)
      return 1;
   else
      return 0;
}
int main() {
   int a = 2, b = 2, c = 3;
   cout<<"The quadratic equation is "<<a<<"x^2 + "<<b<<"x +
   "<<c<<" has ";
   cout<<checkSolution(a, b, c)<<" solutions ";
   return 0;
}

출력:

The quadratic equation is 2x^2 + 2x + 3 has 0 solutions