Penjelasan terperinci tentang fungsi baki dalam C++

WBOY
Lepaskan: 2023-11-18 14:41:08
asal
4214 orang telah melayarinya

Penjelasan terperinci tentang fungsi baki dalam C++

Penjelasan terperinci tentang fungsi baki dalam C++

Dalam C++, operator baki (%) digunakan untuk mengira baki pembahagian dua nombor. Ia ialah pengendali binari yang operannya boleh terdiri daripada sebarang jenis integer (termasuk char, short, int, long, dll.) atau jenis nombor titik terapung (seperti float, double). Operator selebihnya mengembalikan hasil dengan tanda yang sama seperti dividen.

Sebagai contoh, untuk baki operasi integer, kita boleh menggunakan kod berikut untuk melaksanakannya:

int a = 10;
int b = 3;
int c = a % b; // c的值为1
Salin selepas log masuk

Dalam kod di atas, pembolehubah a dibahagikan dengan pembolehubah b, dan bakinya ialah 1, yang ditugaskan kepada pembolehubah c . Kita juga boleh menggunakan nombor titik terapung untuk melakukan operasi baki Kod adalah seperti berikut:

float m = 10.5;
float n = 3.2;
float p = fmod(m, n); // p的值为1.3
Salin selepas log masuk

Dalam contoh ini, kami menggunakan fungsi fmod dalam fail pengepala cmath untuk mengira baki nombor titik terapung m dibahagikan dengan n. Nilai pulangan bagi fungsi fmod juga merupakan jenis nombor titik terapung.

Selain menggunakan baki operator dan fungsi fmod, C++ juga menyediakan beberapa fungsi lain untuk mengira baki, seperti fungsi baki dan fungsi modf. Prototaip fungsi baki adalah seperti berikut:

double remainder(double x, double y);
float remainder(float x, float y);
long double remainder(long double x, long double y);
Salin selepas log masuk

Fungsi ini mengembalikan baki bahagian x/y. Tidak seperti fungsi fmod, baki yang dikembalikan oleh fungsi baki mempunyai tanda yang sama seperti dividen. Sebagai contoh, kod berikut menunjukkan penggunaan fungsi baki:

double x = 10.5;
double y = -3.2;
double r = remainder(x, y); // r的值为1.3
Salin selepas log masuk

Dalam contoh ini, kita membahagikan nombor titik terapung x dengan nombor titik terapung y dan mengira bakinya menggunakan fungsi baki, dan hasilnya ialah 1.3.

Satu lagi fungsi yang biasa digunakan untuk mengira baki ialah fungsi modf, yang digunakan untuk menguraikan nombor titik terapung kepada bahagian integer dan bahagian perpuluhan. Prototaip fungsi modf adalah seperti berikut:

double modf(double x, double* intpart);
float modf(float x, float* intpart);
long double modf(long double x, long double* intpart);
Salin selepas log masuk

Parameter pertama fungsi ini ialah nombor titik terapung yang akan diuraikan, dan parameter kedua ialah penunjuk kepada jenis dua kali ganda/terapung/panjang, digunakan untuk menyimpan bahagian integer . Fungsi modf mengembalikan bahagian perpuluhan nombor titik terapung x. Berikut ialah contoh:

double num = 3.14;
double intpart;
double fracpart = modf(num, &intpart); // intpart的值为3.0, fracpart的值为0.14
Salin selepas log masuk

Dalam contoh ini, kami menguraikan nombor titik terapung kepada bahagian integer dan bahagian perpuluhan, dan menyimpan nilai terurai masing-masing dalam pembolehubah intpart dan fracpart.

Ringkasnya, C++ menyediakan pelbagai kaedah untuk mengira baki dan menguraikan fungsi nombor titik terapung. Sama ada nombor integer atau titik terapung, melalui fungsi ini, kami boleh menyelesaikan tugas pengiraan yang berkaitan dengan mudah dalam C++.

Atas ialah kandungan terperinci Penjelasan terperinci tentang fungsi baki dalam C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!