Kako napišete eksponent v C?

How Do You Write An Exponent C



V jeziku C lahko vrednost eksponenta izračunamo z uporabo NS () funkcijo. Ta članek se bo naučil uporabljati NS () funkcijo za izvajanje operacije stopnjevanja. Naučili se bomo tudi, kako uporabljati operater premikanja bitov za izvedbo operacije eksponenciacije. Poskusili bomo napisati uporabniško definirano funkcijo za izračun eksponentov. Torej, začnimo.

Sintaksa

dvojno NS ( dvojno baza, dvojno exp);







The NS () funkcija je definirana v math.h naslovno datoteko.



Argumenti

Ta funkcija ima dva argumenta, bazo in exp, za izračun vrednosti bazo dvignili na moč eksp . Tukaj bazo in eksp oba sta dvojna.



Vrnjene vrednosti

O uspehu, NS () funkcija vrne vrednost bazo dvignili na moč eksp .





Če je vrednost eksp je 0, NS () funkcija vrne 1.

Če bazo je negativno in eksp ni integralno, NS () funkcija vrne NaN (Ne-številka-A).



Primeri

//Primer1.c
#vključi
#vključi

intglavni()
{

intrezultat;
rezultat= (int) NS (3,5);
printf (' npow (3,5) => %d ',rezultat);
printf (' npow (3, -5) => %lf ', NS (3, -5));
printf (' npow (-3, -5) => %lf ', NS (-3, -5));
printf (' npow (3,5.1) => %lf ', NS (3,5.1));
printf (' npow (-3,5,1) => %lf ', NS (-3,5.1));
printf (' npow (-3, -5.1) => %lf n', NS (-3, -5.1));

vrnitev 0;
}

V primeru 1.c smo videli izhod NS () funkcijo. Tukaj uporabljamo -lm parameter ukazne vrstice za povezavo v matematični knjižnici. Od vrstic 10 do 13 smo dobili pričakovane rezultate. Za vrstici 14 in 15 imamo -nan (Ne številka), ker drugi argument ni integralni.

Eksponent z uporabo bitnega premika

Če želimo izračunati eksponent na moč 2, lahko to naredimo s premikom bitov.

Levi premik za m je enakovreden prvemu izrazu in 2 za moč m.

n<< m = n*pow (2, m)

Desni premik za m je enakovreden delitvi prvega člena in 2 za moč m.

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

Deluje le, če je m pozitiven.

//Primer2.c
#vključi

intglavni()
{
printf (' n1<%d',1<<3);
printf (' n5<%d',5<<3);
printf (' n-5<%d', -53 => %d', 40 >> 3);
printf ('
n40>>3 => %d', 40 >> 3);
printf ('
n-40>>3 => %d n', -40 >> 3);

vrnitev 0;
}

V primeru2.c smo videli, kako lahko operater bitnega premika uporabimo za eksponent na stopnji 2. Zelo koristno je zmanjšati kompleksnost kode.

Eksponent z uporabo uporabniško določene funkcije

Za izračun eksponentov lahko napišemo uporabniško definirano funkcijo. V primeru3.c bomo napisali uporabniško definirano funkcijo eksponent (), ki upošteva dva argumenta in exp tipa float ant integer.

//Primer3.c
#vključi

plavatieksponent(plavatibazo, int eksp )
{
plavatirezultat=1,0;
plavatijaz;
če( eksp < 0)
{
eksp = -1 * eksp ;
za(jaz=1;jaz<= eksp ;jaz++)
rezultat=rezultat*bazo;

rezultat= 1,0/rezultat;
}
drugače
{
za(jaz=1;jaz%f', eksponent (3,0));
printf ('
nexponent(3, -5) => %f', eksponent (3, -5));
printf ('
nexponent(-3, -5) => %f', eksponent (-3, -5));

vrnitev 0;
}

Primer3.c smo videli izhod uporabniško določene funkcije eksponent () . Ta funkcija deluje, ko je eksponent integral. Za pravi eksponent moramo uporabiti NS () funkcijo.

Zaključek

V tem članku smo videli uporabo NS () funkcijo in Malo premikanje operator, kako lahko eksponent izračunamo v jeziku C. Naučili smo se tudi, kako sami napisati svojo funkcijo za izračun eksponentov. Zdaj lahko te tehnike brez dvoma uporabimo v našem programu C.