Syntax
dvojnásobek prášek(dvojnásobek základna, dvojnásobek exp);
The pow () funkce je definována v matematika.h hlavičkový soubor.
Argumenty
Tato funkce má dva argumenty, základna a exp, vypočítat hodnotu základna povýšen na sílu exp. Tady základna a exp oba jsou dvojí.
Návratové hodnoty
O úspěchu pow () funkce vrací hodnotu základna povýšen na sílu exp.
Pokud je hodnota exp je 0 pow () funkce vrací 1.
Li základna je negativní a exp není integrální, pow () funkce se vrací NaN (Not-A-Number).
Příklady
// Příklad 1.C#zahrnout
#zahrnout
int main ()
int výsledek;
result = (int) pow (3,5);
printf ("\ npow (3,5) =>% d", výsledek);
printf ("\ npow (3, -5) =>% lf", pow (3, -5));
printf ("\ npow (-3, -5) =>% lf", pow (-3, -5));
printf ("\ npow (3,5.1) =>% lf ", prášek (3,5.1));
printf ("\ npow (-3,5.1) =>% lf ", pow (-3,5.1));
printf ("\ npow (-3, -5.1) =>% lf \ n ", pow (-3, -5.1));
návrat 0;
V příkladu 1.c, viděli jsme výstup pow () funkce. Zde používáme -lm parametr příkazového řádku k propojení v matematické knihovně. Z řádků 10 až 13 máme výstup podle očekávání. Pro linky 14 a 15 máme -nan(Není číslo), protože druhý argument není integrální.
Exponent využívající posun bitů
Pokud chceme vypočítat exponent na sílu 2, můžeme to udělat pomocí bitového posunu.
Levý posun o m je ekvivalentní prvnímu členu a 2 o síle m.
n << m = n * pow (2, m)
Pravý posun o m je ekvivalentní rozdělení prvního členu a 2 na mocninu m.
n >> m = n / pow (2, m)
Je to jen práce, když m je kladné.
// Příklad 2.C#zahrnout
int main ()
printf ("\ n 1< %d",1<<3);
printf ("\ n 5< %d",5<<3);
printf ("\ n -5< %d",-5<>3 =>% d ", 40 >> 3);
printf ("\ n 40 >> 3 =>% d", 40 >> 3);
printf ("\ n -40 >> 3 =>% d \ n", - 40 >> 3);
návrat 0;
V příkladu 2.c, viděli jsme, jak lze operátor bitového posunu použít pro exponent na sílu 2. Je velmi užitečné snížit složitost kódu.
Exponent pomocí uživatelem definované funkce
Můžeme napsat uživatelem definovanou funkci pro výpočet exponentů. V příkladu 3.c, napíšeme uživatelem definovanou funkci exponent (), který bere dva argumenty založené a exp typu float ant integer.
// Příklad 3.C#zahrnout
float exponent (float base, int exp)
float result = 1.0;
float i;
pokud (exp < 0)
exp = -1 * exp;
pro (i = 1; i<=exp;i++)
result = result * base;
výsledek = 1.0 / výsledek;
jiný
pro (i = 1; i% f ", exponent (3,0));
printf ("\ nexponent (3, -5) =>% f", exponent (3, -5));
printf ("\ nexponent (-3, -5) =>% f", exponent (-3, -5));
návrat 0;
Příklad 3.c viděli jsme výstup uživatelem definované funkce exponent (). Tato funkce funguje, když je exponent integrální. Pro skutečný exponent musíme použít pow () funkce.
Závěr
V tomto článku jsme viděli použití pow () funkce a Posun bitů operátor, jak lze exponent vypočítat v jazyce C. Také jsme se naučili, jak psát vlastní funkci pro výpočet exponentů. Nyní můžeme tyto techniky bezpochyby použít v našem programu C.