Sintaksis
dobel NS ( dobel basis, dobel exp);
NS NS() fungsi didefinisikan dalam matematika.h berkas kepala.
Argumen
Fungsi ini membutuhkan dua argumen, basis dan pengalaman, untuk menghitung nilai basis diangkat ke kekuatan exp . Di Sini basis dan exp keduanya ganda.
Mengembalikan nilai
Pada kesuksesan, NS() fungsi mengembalikan nilai basis diangkat ke kekuatan exp .
Jika nilai exp adalah 0, NS() fungsi kembali 1.
Jika basis negatif dan exp tidak integral, maka NS() fungsi kembali NaN (Bukan-A-Nomor).
Contoh
//Contoh1.c#termasuk
#termasuk
ke dalamutama()
{
ke dalamhasil;
hasil= (ke dalam) NS (3,5);
printf (' pow(3,5) => %d',hasil);
printf (' pow(3,-5) => %lf', NS (3, -5));
printf (' pow(-3,-5) => %lf', NS (-3, -5));
printf (' pow(3.5.1) => %lf', NS (3,5.1));
printf (' pow(-3.5.1) => %lf', NS (-3,5.1));
printf (' pow(-3,-5.1) => %lf ', NS (-3, -5.1));
kembali 0;
}
Dalam Contoh1.c, kita telah melihat output dari NS() fungsi. Di sini kita menggunakan -lm parameter baris perintah untuk ditautkan di perpustakaan matematika. Dari baris 10 sampai 13, kita sudah mendapatkan output seperti yang diharapkan. Untuk baris 14 dan 15, kita dapatkan -nan (Bukan angka) karena argumen kedua tidak integral.
Eksponen menggunakan Pergeseran Bit
Jika kita ingin menghitung eksponen pangkat 2, maka kita dapat melakukannya dengan menggunakan bit shifting.
Pergeseran kiri sebesar m sama dengan suku pertama dan 2 pangkat m.
n<< m = n*pow(2,m)
Pergeseran kanan sebesar m sama dengan pembagian suku pertama dan 2 pangkat m.
n>>m = n/pow(2,m)
Ini hanya bekerja ketika m positif.
//Contoh2.c#termasuk
ke dalamutama()
{
printf (' 1<%d',1<<3);
printf (' 5<%d',5<<3);
printf (' -5<%d', -53 => %D', 40 >> 3);
printf(' 40>>3 => %D', 40 >> 3);
printf(' -40>>3 => %d ', -40 >> 3);
kembali 0;
}
Dalam Contoh2.c, kita telah melihat bagaimana operator pergeseran bit dapat digunakan untuk pangkat 2 pangkat 2. Hal ini sangat berguna untuk mengurangi kerumitan kode.
Eksponen menggunakan fungsi yang ditentukan pengguna
Kita dapat menulis fungsi yang ditentukan pengguna untuk menghitung eksponen. Dalam Contoh3.c, kita akan menulis fungsi yang ditentukan pengguna eksponen (), yang mengambil dua argumen berdasarkan dan exp tipe float ant integer.
//Contoh3.c#termasuk
mengambangeksponen(mengambangbasis, ke dalam exp )
{
mengambanghasil=1.0;
mengambangSaya;
jika( exp < 0)
{
exp = -1 * exp ;
untuk(Saya=1;Saya<= exp ;Saya++)
hasil=hasil*basis;
hasil= 1.0/hasil;
}
lain
{
untuk(Saya=1;Saya%F',eksponen(3,0));
printf('eksponen(3, -5) => %F',eksponen(3,-5));
printf('eksponen(-3, -5) => %F',eksponen(-3,-5));
kembali 0;
}
Contoh3.c kita telah melihat output dari fungsi yang ditentukan pengguna eksponen () . Fungsi ini bekerja ketika eksponen adalah integral. Untuk eksponen nyata, kita harus menggunakan NS() fungsi.
Kesimpulan
Dalam artikel ini, kita telah melihat menggunakan NS() fungsi dan Pergeseran sedikit operator bagaimana eksponen dapat dihitung dalam bahasa C. Kita juga telah belajar bagaimana menulis fungsi kita sendiri untuk menghitung eksponen. Sekarang kita dapat menggunakan teknik ini dalam program C kita tanpa keraguan.