C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C++の二次方程式で解の数を見つけるプログラム


この問題では、タイプax2 + bx + cの2次方程式が与えられます。ここで、a、b、およびcは定数です。私たちの仕事は、C++の二次方程式で解の数を見つけるプログラムを作成することです。

問題の説明 −ここでは、最大2つの解を持つことができる2次方程式の解の数を見つける必要があります。

問題を理解するためにいくつかの例を見てみましょう

例1:

入力 − 3x 2 + 7x + 4

出力 − 2

説明-方程式の2つの解は1と4/3です。

例2:

入力 − x 2 -4x + 4

出力 − 1

説明-方程式の解は2です。

入力 − 2x 2 + 2x + 2

出力 − 0

説明:方程式の解はありません。

ソリューションアプローチ:

解の数を見つけるには、判別式(D)の値を使用して求められる2次方程式の解の性質が必要です。

方程式の根は次の式で与えられます

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

したがって、判別式の値は2次方程式の根の数を示します。

  • 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

  1. 再帰を使用して数値の階乗を見つけるC++プログラム

    非負の整数nの階乗は、n以下のすべての正の整数の積です。 例:4の階乗は24です。 4! = 4 * 3 * 2 *1 4! = 24 整数の階乗は、再帰プログラムまたは反復プログラムを使用して見つけることができます。 次のプログラムは、数値の階乗を見つけるための再帰プログラムを示しています- 例 #include <iostream> using namespace std; int fact(int n) {    if ((n==0)||(n==1))    return 1;    else   &

  2. 二次方程式のすべての根を見つけるためのC++プログラム

    二次方程式はax2の形式です。 + bx+c。二次方程式の根は次の式で与えられます- 3つのケースがあります- b 2 <4 * a * c-ルートは本物ではありません。つまり、複雑です b 2 =4 * a * c-根は実数であり、両方の根は同じです。 b 2 4 * a * c-根は実数であり、両方の根は異なります 二次方程式の根を見つけるプログラムは次のとおりです。 例 #include<iostream> #include<cmath> using namespace std; int main() {    in