Sintakse
dubultā NS ( dubultā bāze, dubultā exp);
The NS () funkcija ir definēta sadaļā matemātika.h galvenes fails.
Argumenti
Šai funkcijai ir divi argumenti, bāze un exp, lai aprēķinātu vērtību bāze paaugstināts līdz spēkam exp . Šeit bāze un exp abi ir dubultā.
Atgriezt vērtības
Par panākumiem ,. NS () funkcija atgriež vērtību bāze paaugstināts līdz spēkam exp .
Ja vērtība exp ir 0, NS () funkcija atgriež 1.
Ja bāze ir negatīvs un exp nav neatņemama, NS () funkcija atgriežas NaN (Ne-A-numurs).
Piemēri
//Piemērs1.c#iekļaut
#iekļaut
intgalvenais()
{
intrezultāts;
rezultāts= (int) NS (3,5);
printf (' nPow (3,5) => %d ',rezultāts);
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));
atgriezties 0;
}
1.c piemērā mēs esam redzējuši NS () funkciju. Šeit mēs izmantojam -lm komandrindas parametrs, uz kuru izveidot saiti matemātikas bibliotēkā. No 10. līdz 13. rindai mēs esam ieguvuši rezultātu, kā paredzēts. 14. un 15. rindai mēs esam ieguvuši -nans (Nav skaitlis), jo otrais arguments nav integrāls.
Eksponents, izmantojot bitu nobīdi
Ja mēs vēlamies aprēķināt eksponentu līdz 2, tad mēs to varam izdarīt, izmantojot bitu nobīdi.
Kreisā nobīde pa m ir ekvivalenta pirmajam terminam un 2 - jaudai m.
n<< m = n*spēks (2, m)
Pareizā nobīde par m ir vienāda ar pirmā termiņa dalījumu un 2 uz jaudu m.
n >> m = n/pow (2, m)
Tas ir darbs tikai tad, ja m ir pozitīvs.
//Piemērs2.c#iekļaut
intgalvenais()
{
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);
atgriezties 0;
}
Piemērā2.c mēs esam redzējuši, kā bitu nobīdes operatoru var izmantot eksponentam līdz 2. pakāpei. Ir ļoti noderīgi samazināt koda sarežģītību.
Eksponents, izmantojot lietotāja definētu funkciju
Mēs varam uzrakstīt lietotāja definētu funkciju, lai aprēķinātu eksponentus. Piemērā3.c mēs uzrakstīsim lietotāja definētu funkciju eksponents (), kas ņem divus argumentus, pamatojoties un exp tipa float ant vesels skaitlis.
//Piemērs3.c#iekļaut
peldēteksponents(peldētbāze, int exp )
{
peldētrezultāts=1.0;
peldēti;
ja( exp < 0)
{
exp = -1 * exp ;
priekš(i=1;i<= exp ;i++)
rezultāts=rezultāts*bāze;
rezultāts= 1.0/rezultāts;
}
citādi
{
priekš(i=1;i%f', eksponents (3,0));
printf (' neeksponents(3, -5) => %f', eksponents (3, -5));
printf (' neeksponents(-3, -5) => %f', eksponents (-3, -5));
atgriezties 0;
}
Piemērs3.c mēs esam redzējuši lietotāja definētās funkcijas izvadi eksponents () . Šī funkcija darbojas, ja eksponents ir neatņemams. Patiesam eksponentam mums jāizmanto NS () funkciju.
Secinājums
Šajā rakstā mēs esam redzējuši, izmantojot NS () funkcija un Bitu maiņa operators, kā eksponentu var aprēķināt C valodā. Mēs arī esam iemācījušies rakstīt savu funkciju, lai aprēķinātu eksponentus. Tagad mēs bez šaubām varam izmantot šīs metodes mūsu C programmā.