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

C ++プログラミングのSqrt、sqrtl、およびsqrtf


数学の授業

この記事では、数学クラスのエッセンシャル関数sqrt()、sqrtl()、およびsqrtf()を使用して、double型、long型、およびfloat型変数の平方根をそれぞれ正確に計算する方法について説明します。 C ++のMathクラスは、sin、cos、平方根、ceil、floorなどの数学計算を計算するための幅広い関数を提供します。したがって、プログラムにヘッダークラ​​スライブラリの定義をインポートする必要があります。すべての計算方法を利用するため。

平方根法

Mathクラスのdoublesqrtl()メソッドは、double変数の平方根を正確に返します。この関数の構文は次のとおりです。

構文

double sqrt(double arg)

次のc++コード構造は、平方根値を計算するための初期化値を持つdouble型変数を定義します。次に、数学クラスのメソッドsqrt()はこれらの値を受け入れ、次のような精度の値で結果を生成します。

#include <cmath>
#include <iomanip>
#include <iostream>
using namespace std;
int main(){
   double val = 225.0;
   cout << fixed << setprecision(5) << sqrt(val);
   return (0);
}

出力

以下に示すように、このプログラムの出力は次のように精度5で生成されています。

15.00000

Sqrtlメソッド

Mathクラスのlongdoublesqrtl()メソッドは、longdouble変数の平方根を正確に返します。この関数の構文は次のとおりです。

long double sqrtl(long double arg)

次のように、Math.sqrtl()メソッドによって使用によって提供される長いdouble変数の平方根を計算するための図を以下に示します。

#include <cmath>
#include <iomanip>
#include <iostream>
using namespace std;
int main(){
   long long int val = 1000000000000000000;
   cout << fixed << setprecision(10) << sqrt(val);
   return (0);
}

出力

コードエディタを使用してプログラムをコンパイルした後、入力されたlong型変数の計算値は次のようになります。

1000000000.000000000

Sqrtfメソッド

Mathクラスのfloatsqrtf()メソッドは、float型変数の平方根を正確に返します。この関数の構文は次のとおりです。

構文

float sqrtf(float arg)

構文に従って、プログラムはsqrtf()メソッドでfloat型変数を提供し、次のように平方根を計算します。

#include <cmath>
#include <iomanip>
#include <iostream>
using namespace std;
int main(){
   float val = 300.0;
   cout << fixed << setprecision(5) << sqrtf(val);
   return (0);
}

外側

提供されたfloat型変数の出力は、次のように二乗されます。

17.32051

  1. C++での直方体の体積と表面積のプログラム

    直方体とは何ですか? 直方体は、長方形の6つの面を持つ3次元オブジェクトです。つまり、辺の長さと幅が異なります。立方体と直方体の違いは、立方体の長さ、高さ、幅が等しいのに対し、直方体ではこれら3つは同じではないことです 直方体の特性は次のとおりです- 6つの顔 12個のエッジ 8つの頂点 以下は立方体の図です 問題 長さ、幅、体積が与えられた場合、タスクは直方体の総表面積と体積を見つけることです。ここで、表面積は面が占めるスペースであり、体積は形状に含めることができるスペースです。 直方体の表面積と体積を計算するには、式があります 表面積=2(| * w + w * h

  2. C ++でfloatとdoubleを比較する方法は?

    float変数とdouble変数の比較は、最終目標が何であるかによって異なります。詳細をあまり説明せずに実行可能な関数が必要で、一部の不正確な計算で問題が発生しない場合は、次の関数を使用できます- 例 #include<iostream> using namespace std; // Define the error that you can tolerate #define EPSILON 0.000001 bool areSame(double a, double b) {    return fabs(a - b) < EPSILON; }