C programozás

Hogyan írhat exponentust C-be?

Hogyan írhat exponentust C-be?
A C nyelvben az exponens érték kiszámítható a hadifogoly() funkció. Ez a cikk megtanulja a hadifogoly() funkció a hatványozási művelet végrehajtására. Megtanuljuk a bitváltó operátor a hatványozási művelet végrehajtására. Megpróbálunk egy felhasználó által definiált függvényt írni az exponensek kiszámításához.  Tehát kezdjük.

Szintaxis

kettős hadifogoly(kettős bázis, kettős exp);

A hadifogoly() függvény meghatározása matek.h fejlécfájl.

Érvek

Ennek a függvénynek két argumentuma van, bázis és exp, értékének kiszámításához bázis erejére emelt exp. Itt bázis és exp mindkettő kettős.

Visszatérési értékek

A sikeren a hadifogoly() függvény adja vissza a bázis erejére emelt exp.

Ha az értéke exp értéke 0, a hadifogoly() A függvény értéke 1.

Ha bázis negatív és exp nem integrál, az hadifogoly() függvény visszatér NaN (Nem-A-szám).

Példák

// Példa1.c
#include
#include
int main ()

int eredmény;
eredmény = (int) pow (3,5);
printf ("\ npow (3,5) =>% d", eredmény);
printf ("\ npow (3, -5) =>% lf", pow (3, -5));
printf ("\ npow (-3, -5) =>% lf", pow (-3, -5));
printf ("\ npow (3,5.1) =>% lf ", pow (3,5.1));
printf ("\ npow (-3,5.1) =>% lf ", pow (-3,5.1));
printf ("\ npow (-3, -5.1) =>% lf \ n ", pow (-3, -5.1));
visszatér 0;

Az 1. példában.c, láttuk a kimenetét hadifogoly() funkció. Itt használjuk a -lm parancssori paraméter a matematikai könyvtárban való összekapcsoláshoz. A 10-től 13-ig terjedő sorokig a várt módon kaptuk meg a kimenetet. A 14. és 15. sorhoz megvan -nan(Nem szám), mert a második érv nem szerves.

Exponent a Bit Shifting használatával

Ha ki akarjuk számolni a 2 hatványának kitevőjét, akkor biteltolással megtehetjük.

A bal m eltolás m-vel egyenértékű az első taggal és 2 az m hatványával.

n << m  = n * erő (2, m)

A jobb elmozdulás m-mel egyenértékű az első tag, 2 pedig az m hatvány osztásával.

n >> m = n / pow (2, m)

Csak akkor működik, ha m pozitív.

// 2. példa.c
#include
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);
visszatér 0;

A 2. példában.c, láttuk, hogy a biteltolás operátor hogyan használható a 2 hatványának kitevőjére. Nagyon hasznos csökkenteni a kód összetettségét.

Exponens a felhasználó által definiált függvény használatával

Írhatunk egy felhasználó által definiált függvényt az exponensek kiszámításához. A 3. példában.c, írunk egy felhasználó által definiált függvényt kitevő (), amely két argumentumon alapuló és exp típusú float ant egész számot vesz fel.

// 3. példa.c
#include
úszó kitevő (úszó alap, int exp)

úszó eredmény = 1.0;
úszó i;
ha (exp < 0)

exp = -1 * exp;
mert (i = 1; i<=exp;i++)
eredmény = eredmény * alap;
eredmény = 1.0 / eredmény;

más

for (i = 1; i% f ", kitevő (3,0));
printf ("\ nexponent (3, -5) =>% f", kitevő (3, -5));
printf ("\ nexponent (-3, -5) =>% f", kitevő (-3, -5));
visszatér 0;

3. példa.c láttuk a felhasználó által definiált függvény kimenetét kitevő (). Ez a függvény akkor működik, ha a kitevõ integrál. A valódi exponenshez a hadifogoly() funkció.

Következtetés

Ebben a cikkben láttuk a hadifogoly() funkció és Bitváltás operátor, hogy az exponens hogyan számítható ki C nyelven. Megtanultuk azt is, hogyan kell megírni a saját függvényünket az exponensek kiszámításához. Most minden kétség nélkül felhasználhatjuk ezeket a technikákat a C programunkban.

Az FPS növelése Linux alatt?
Az FPS jelentése Képkocka másodpercenként. Az FPS feladata a videolejátszások vagy játékteljesítmények képkockasebességének mérése. Egyszerű szavakkal...
A legnépszerűbb Oculus App Lab játékok
Ha Oculus fülhallgató-tulajdonos, akkor tisztában kell lennie az oldalsó töltéssel. Az oldaltöltés a nem áruházi tartalom fejhallgatóra történő telepí...
A legjobb 10 játék az Ubuntuban
A Windows platform a játékok egyik domináns platformja volt, mivel a játékokat hatalmas százalékban fejlesztik ma a natív Windows támogatására. Kihívh...