Bagaimanakah Saya Boleh Membahagikan Nombor Sangat Besar dalam Go Menggunakan `big.Int`?

Barbara Streisand
Lepaskan: 2024-10-28 02:34:30
asal
733 orang telah melayarinya

How Can I Divide Extremely Large Numbers in Go Using `big.Int`?

Membahagikan Nombor Besar dalam Go Menggunakan Integer Besar

Masalah membahagi nombor yang sangat besar dalam Go timbul apabila berurusan dengan nilai yang melebihi kapasiti jenis integer standard. Dalam contoh ini, jenis big.Int daripada pakej "matematik/besar" menawarkan penyelesaian.

Cara Membahagi Nombor Besar dengan besar.Int

Untuk membahagi nombor besar menggunakan big.Int, ikut langkah berikut:

<code class="go">package main

import (
    "fmt"
    "math/big"
)

func main() {
    // Initialize
    first := new(big.Int).MulRange(1, 50)
    second := new(big.Int).MulRange(1, 18)
    
    // Divide
    dv := new(big.Int).Div(first, second)
    
    // Print
    fmt.Printf("First: %s \n", first.String())
    fmt.Printf("Second: %s \n", second.String())
    fmt.Printf("Division result: %s \n", dv.String())
}</code>
Salin selepas log masuk

Penjelasan:

  1. Import pakej "matematik/besar".
  2. Memulakan dua pembolehubah besar.Int (pertama dan kedua) dengan nombor yang diberikan menggunakan MulRange, yang mengira faktorial untuk julat integer.
  3. Gunakan kaedah Div of big.Int untuk membahagikan dahulu dengan saat, menyimpan hasil dalam pembolehubah dv.
  4. Cetak nombor asal dan hasil bahagi menggunakan kaedah String, yang menukar nilai besar.Int kepada rentetan.

Contoh Output :

First: 30414093201713378043612608166064768844377641568960512000000000000
Second: 6402373705728000
Division result: 4750440164794325701367714688167999176704000000000
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membahagikan Nombor Sangat Besar dalam Go Menggunakan `big.Int`?. 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
Artikel terbaru oleh pengarang
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!