c mathematical functions
Tento výukový program vysvětluje důležité matematické funkce jazyka C ++ obsažené v hlavičkovém souboru, jako jsou abs, max, pow, sqrt atd., S příklady a C ++ konstantami jako M_PI:
C ++ poskytuje velké množství matematických funkcí, které lze použít přímo v programu. Jako podmnožina jazyka C odvozuje C ++ většinu těchto matematických funkcí z math.h záhlaví C.
V C ++ jsou matematické funkce zahrnuty v záhlaví .
=> Zkontrolujte kompletní C ++ ZDARMA tréninkovou sérii zde.
Co se naučíte:
Matematické funkce v C ++
Tabulka matematických funkcí v C ++
Níže je uveden seznam důležitých matematických funkcí v C ++ spolu s jejich popisem, prototypem a příkladem.
Ne | Funkce | Prototyp | Popis | Příklad |
---|---|---|---|---|
6 | porážka | dvojitý atan (dvojitý x); | Vrátí tečnou oblouku úhlu x v radiánech. ** Arc tangenta je inverzní tangenta opálení. | dvojitý parametr = 1,0; náklady<< atan (param) * 180,0 / PI; (zde PI = 3,142) ** vrátí 47,1239 |
Trigonometrické funkce | ||||
jeden | něco | dvojitý cos (dvojitý x); | Vrátí kosinus úhlu x v radiánech. | náklady<< cos ( 60.0 * PI / 180.0 ); (zde PI = 3,142) ** vrátí 0,540302 |
dva | bez | dvojitý hřích (dvojitý x); | Vrátí sinus úhlu x v radiánech. | náklady<< sin ( 60.0 * PI / 180.0 ); (zde PI = 3,142) ** vrátí 0,841471 |
3 | tak | dvojité opálení (dvojité x); | Vrátí tangens úhlu x v radiánech. | náklady<< tan ( 45.0 * PI / 180.0 ); (zde PI = 3,142) ** vrátí 0,931596 |
4 | acos | dvojité acos (dvojité x); | Vrátí kosinus úhlu úhlu x v radiánech. ** Arc cosine je inverzní kosinus operace cos. | dvojitý parametr = 0,5; náklady<< acos (param) * 180,0 / PI; (zde PI = 3,142) ** vrátí 62,8319 |
5 | Slaný | dvojitý asin (dvojitý x); | Vrátí sinus oblouku úhlu x v radiánech. ** Arc sinus je inverzní sinus operace hříchu. | dvojitý parametr = 0,5; náklady<< asin (param) * 180,0 / PI; (zde PI = 3,142) ** návrat 31.4159 |
Napájecí funkce | ||||
7 | přes | dvojitý prášek (dvojitá báze, dvojitý exponent); | Vrátí zvýšenou základnu k mocninovému exponentu. | náklady<<”2^3 = “<< pow(2,3); ** vrací 8 |
8 | čtv | double sqrt (double x); | Vrátí druhou odmocninu z x. | náklady<< sqrt(49); ** vrátí 7 |
Funkce zaokrouhlování a zbytku | ||||
9 | strop | dvojitý strop (dvojitý x); | Vrátí nejmenší celočíselnou hodnotu, která není menší než x; Zaokrouhlí x nahoru. | náklady<< ceil(3.8); ** vrací 4 |
10 | podlaha | dvojité patro (dvojité x); | Vrátí větší celočíselnou hodnotu, která není větší než x; Zaokrouhlí x dolů. | náklady<< floor(2.3); ** vrátí 2 |
jedenáct | fmod | double fmod (dvojité číslo, dvojitý denom); | Vrátí zbývající část čísla / denomu s plovoucí desetinnou čárkou. | náklady<< fmod(5.3,2); ** vrací 1.3 |
12 | trunc | dvojitý trunc (dvojitý x); ** také poskytuje varianty pro float a long double | Vrátí nejbližší celočíselnou hodnotu, která není větší než x. Zaokrouhlí x směrem k nule. | náklady<< trunc(2.3); ** vrátí 2 |
13 | kolo | dvojité kolo (dvojité x); ** také poskytuje varianty pro float a long double | Vrátí celočíselnou hodnotu, která je nejblíže k x. | náklady<< round(4.6); ** vrátí 5 |
14 | zbytek | dvojitý zbytek (dvojité číslo, dvojitý denom); ** také poskytuje varianty pro float a long double | Vrátí zbytek s plovoucí desetinnou čárkou čísla / denomu zaokrouhlený na nejbližší hodnotu. | náklady<< remainder(18.5 ,4.2); ** vrací 1.7 |
Minimální, maximální, rozdílové a absolutní funkce | ||||
patnáct | fmax | double fmax (double x, double y). ** také poskytuje varianty pro float a long double. | Vrátí větší hodnotu argumentů xay. Pokud je jedno číslo NaN, vrátí se další. | náklady<< fmax(100.0,1.0); ** vrátí 100 |
16 | fmin | dvojitá fmin (dvojitá x, dvojitá y); ** také poskytuje varianty pro float a long double. | Vrátí menší hodnotu argumentů xay. Pokud je jedno číslo NaN, vrátí se další. | náklady<< fmin(100.0,1.0); ** vrátí 1 |
17 | fdim | double fdim (double x, double y); ** také poskytuje varianty pro float a long double. | Vrátí kladný rozdíl mezi x a y. Pokud x> y, vrátí x-y; jinak vrátí nulu. | náklady<< fdim(2.0,1.0); ** vrátí 1 |
18 | báječné | dvojité báječky (dvojité x); | Vrátí absolutní hodnotu x. | náklady<< fabs(3.1416); ** vrátí 3,1416 |
19 | Sekce | dvojité abs (dvojité x); ** také poskytuje varianty pro float a long double. | Vrátí absolutní hodnotu x. | náklady<< abs(3.1416); ** vrátí 3,1416 |
Exponenciální a logaritmické funkce | ||||
dvacet | exp | double exp (double x); | Vrátí exponenciální hodnotu x, tj. E x. | náklady<< exp(5.0); ** vrátí 148,413 |
dvacet jedna | log | dvojitý protokol (dvojitý x); | Vrátí přirozený logaritmus x. (K základu e). | náklady<< log(5); ** vrátí 1,60944 |
22 | log10 | dvojitý log10 (dvojitý x); | Vrátí běžný logaritmus x (k základně 10). | náklady<< log10(5); ** vrátí 0,69897 |
Program C ++, který demonstruje všechny výše popsané funkce.
#include #include using namespace std; int main () { int PI = 3.142; cout<< 'cos(60) = ' << cos ( 60.0 * PI / 180.0 )< Výstup:
cos (60) = 0,540302
hřích (60) = 0,841471
tan (45) = 0,931596
acos (0,5) = 62,8319
slaný (0,5) = 31,4159
házení (1.0) = 47.1239
2 ^ 3 = 8
sqrt (49) = 7
strop (3,8) = 4
podlaha (2.3) = 2
fmod (5,3,2) = 1,3
trunc (5.3,2) = 2
kolo (4,6) = 5
zbytek (18,5,4,2) = 1,7
fmax (100,0,1,0) = 100
fmin (100,0,1,0) = 1
fdim (2.0,1.0) = 1
fabs (3.1416) = 3.1416
abs (3,1416) = 3,1416
log (5) = 1,60944
exp (5,0) = 148,413
log10 (5) = 0,69897
Ve výše uvedeném programu jsme provedli matematické funkce, které jsme uvedli výše, spolu s jejich příslušnými výsledky.
Dále probereme některé důležité matematické funkce používané v C ++.
Abs => Vypočítá absolutní hodnotu daného čísla.
Sqrt => Slouží k nalezení druhé odmocniny daného čísla.
Pow => Vrátí výsledek podle rozinkové báze k danému exponentu.
Fmax => Najde maximálně dvě zadaná čísla.
Budeme podrobně diskutovat o každé funkci spolu s příklady C ++. Budeme také vědět více o matematické konstantě M_PI, která se často používá v kvantitativních programech.
C ++ abs
Funkční prototyp: návratový_typ abs (datový_typ x);
Parametry funkce: x => hodnota, jejíž absolutní hodnota má být vrácena.
x může být následujících typů:
řešení obtížných situací v práci
dvojnásobek
plovák
dlouhý dvojitý
Návratová hodnota: Vrátí absolutní hodnotu x.
Jako parametry může být návratová hodnota také následujících typů:
dvojnásobek
plovák
dlouhý dvojitý
Popis: Funkce abs se používá k vrácení absolutní hodnoty parametru předaného funkci.
Příklad:
#include #include using namespace std; int main () { cout << 'abs (10.57) = ' << abs (10.57) << '
'; cout << 'abs (-25.63) = ' << abs (-25.63) << '
'; return 0; }
Výstup:
Zde jsme pro přehlednost použili příklady s kladným a záporným číslem s funkcí abs.
C ++ sqrt
Funkční prototyp: double sqrt (double x);
Parametry funkce: x => hodnota, jejíž druhá odmocnina má být vypočítána.
Pokud je x záporné, dojde k chybě domain_error.
Návratová hodnota: Dvojitá hodnota označující druhou odmocninu x.
Pokud je x záporné, dojde k chybě domain_error.
Popis: Funkce sqrt převezme číslo jako parametr a vypočítá jejich druhou mocninu. Pokud je argument záporný, dojde k chybě domény. Když dojde k chybě domény, je nastavena globální proměnná errno EDOM .
Příklad:
#include #include using namespace std; int main () { double param, result; param = 1024.0; result = sqrt (param); cout<<'Square root of '< Výstup:
převést více videí z youtube na mp3
Ve výše uvedeném programu jsme vypočítali druhou odmocninu 1024 a 25 pomocí funkce sqrt.
C ++ pow
Funkční prototyp: dvojitý prášek (dvojitá báze, dvojitý exponent).
Parametry funkce: base => základní hodnota.
Exponent => hodnota exponentu
Návratová hodnota: Hodnota získaná po zvýšení základny na exponent.
Popis: Funkce pow přebírá dva argumenty, tj. Základ a exponent, a poté zvýší základnu na moc exponenta.
Pokud je základ, pokud je konečný zápor a exponent záporný, ale není celočíselná hodnota, dojde k doménové chybě. Určité implementace mohou způsobit chybu domény, když jsou základna i exponent nulové a pokud je základna nula a exponent záporný.
Pokud je výsledek funkce pro návratový typ příliš malý nebo příliš velký, může to mít za následek chybu rozsahu.
Příklad:
#include #include using namespace std; int main () { cout<< '2 ^ 4 = '< Výstup:
výchozí brána není k dispozici
Výše uvedený program demonstruje použití funkce POW v C ++. Vidíme, že vypočítá hodnotu zvýšením čísla na zadaný výkon.
C ++ max
Funkční prototyp: dvojitá fmax (dvojitá x, dvojitá y);
Parametry funkce: x, y => dvě hodnoty, které mají být porovnány, aby bylo nalezeno maximum.
Návratová hodnota: Vrátí maximální hodnotu dvou parametrů.
Pokud je jeden z parametrů Nan, vrátí se druhá hodnota.
Popis: Funkce fmax přebírá dva číselné argumenty a vrací maximum ze dvou hodnot. Kromě výše uvedeného prototypu má tato funkce přetížení i pro další datové typy, jako je float, long double atd.
Příklad:
#include #include using namespace std; int main () { cout <<'fmax (100.0, 1.0) = ' << fmax(100.0,1.0)< Výstup:
Výše uvedený kód ukazuje použití funkce fmax k nalezení maximálně dvou čísel. Vidíme případy, kdy jedno z čísel je záporné a obě čísla jsou záporná.
Matematické konstanty v C ++
Záhlaví C ++ také obsahuje několik matematických konstant, které lze použít v matematickém a kvantitativním kódu.
Abychom do programu zahrnuli matematické konstanty, musíme použít direktivu #define a určit makro „_USE_MATH_DEFINES“. Toto makro má být přidáno do programu, než začleníme knihovnu.
To se provádí, jak je znázorněno níže:
#define _USE_MATH_DEFINES #include #include ….C++ Code…..
Jednou z konstant, které často používáme při psaní matematických a kvantitativních aplikací, je PI. Následující program ukazuje použití předdefinované konstantní PI v programu C ++.
#define _USE_MATH_DEFINES #include #include using namespace std; int main() { double area_circle, a_circle; int radius=5; double PI = 3.142; //using predefined PI constant area_circle = M_PI * radius * radius; cout<<'Value of M_PI:'< Výstup:
Výše uvedený program demonstruje matematickou konstantu M_PI dostupnou v. Také jsme poskytli lokální proměnnou PI inicializovanou na hodnotu 3.142. Výstup ukazuje plochu kruhu vypočítanou pomocí M_PI a lokální proměnné PI se stejnou hodnotou poloměru.
Ačkoli mezi těmito dvěma vypočítanými hodnotami oblasti není velký rozdíl, je často žádoucí použít PI jako lokálně definovanou proměnnou nebo konstantu.
Závěr
C ++ používá různé matematické funkce jako abs, fmax, sqrt, POW atd., Jakož i trigonometrické a logaritmické funkce, které lze použít k vývoji kvantitativních programů. V tomto tutoriálu jsme viděli některé důležité funkce spolu s jejich příklady.
Také jsme viděli matematickou konstantu M_PI, která definuje hodnotu geometrické konstanty PI, kterou lze použít k výpočtu různých vzorců.
C ++ používá matematické funkce zahrnutím záhlaví do programu. Tyto funkce jsou předdefinovány a nemusíme je v našem programu definovat. Tyto funkce můžeme přímo použít v kódu, který díky inturn zefektivňuje kódování.
=> Přečtěte si rozsáhlou sérii výukových kurzů C ++ zde.
Doporučené čtení