Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Tutorial PHP dan GMP: Cara Mengira Songsangan Nombor Besar

Tutorial PHP dan GMP: Cara Mengira Songsangan Nombor Besar

PHPz
PHPzasal
2023-07-29 22:49:551088semak imbas

Tutorial PHP dan GMP: Cara Mengira Unsur Songsang Nombor Besar

Pengenalan:
Dalam bidang matematik dan kriptografi, unsur songsang merupakan satu konsep yang penting, terutamanya apabila berurusan dengan nombor besar atau nombor perdana yang besar. Artikel ini akan memperkenalkan cara menggunakan PHP dan perpustakaan GMP untuk mengira songsangan nombor besar.

Apakah unsur songsang?
Dalam matematik, untuk nombor a dan modulus m, jika terdapat nombor b supaya (a * b) mod m = 1, maka b ialah unsur songsang bagi a. Unsur songsang sering digunakan untuk menyelesaikan beberapa masalah teori nombor, seperti mengira nombor perdana, menyelesaikan persamaan kongruen, dsb.

Kira unsur songsang menggunakan perpustakaan GMP:
GMP (Perpustakaan Aritmetik Berbilang Ketepatan GNU) ialah perpustakaan untuk pengiraan matematik ketepatan tinggi. Ia menyediakan satu siri fungsi untuk mengendalikan nombor yang besar, termasuk pengiraan songsang.

Sebelum menggunakan GMP, anda perlu memasang sambungan GMP terlebih dahulu dan membolehkannya. Sambungan GMP boleh dipasang dengan arahan berikut:

sudo apt-get install php-gmp

Seterusnya, tambah baris berikut pada kod PHP untuk mendayakan GMP:

extension=php_gmp.dll

Contoh: Kira songsangan nombor besar
Sekarang mari kita lihat contoh, katakan kita ingin mengira songsangan bagi nombor 123 unsur Songsang. Pertama, kita perlu menukarnya kepada nombor GMP, menggunakan fungsi gmp_init() untuk melakukan ini:

$number = "123";
$gmp_number = gmp_init($number);

Seterusnya, kita menggunakan fungsi gmp_invert() untuk mengira songsang:

$modulus = gmp_init("1000000007");
$inverse = gmp_invert($gmp_number, $modulus);

Dalam contoh di atas, kita tetapkan modulus ialah 1000000007, iaitu nombor perdana yang biasa digunakan. Fungsi gmp_invert() akan mengembalikan elemen songsang yang dikira.

Akhir sekali, kita boleh menukar songsangan kembali kepada integer biasa dan mengeluarkan hasilnya:

$inverse_number = gmp_strval($inverse);
echo "The inverse of $number mod {$modulus} is: {$inverse_number}.";

Contoh kod penuh:

$number = "123";
$gmp_number = gmp_init($number);

$modulus = gmp_init("1000000007");
$inverse = gmp_invert($gmp_number, $modulus);

$inverse_number = gmp_strval($inverse);
echo "The inverse of $number mod {$modulus} is: {$inverse_number}.";

Ringkasan:
Artikel ini menerangkan cara menggunakan PHP dan perpustakaan GMP untuk mengira songsangan nombor besar . Unsur songsang digunakan secara meluas dalam matematik dan kriptografi, terutamanya apabila berurusan dengan nombor besar atau nombor perdana yang besar. Dengan menggunakan fungsi yang disediakan oleh perpustakaan GMP, kita boleh mengira songsangan nombor besar dengan mudah.

Atas ialah kandungan terperinci Tutorial PHP dan GMP: Cara Mengira Songsangan Nombor Besar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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