Rumah hujung hadapan web tutorial js JS实现两个大数(整数)相乘_javascript技巧

JS实现两个大数(整数)相乘_javascript技巧

May 16, 2016 pm 04:50 PM
integer gandakan

大数,即超出语言所能表示的数字最大范围的数字,此时的数字只能用字符串来表示。那么如何实现两个大数相乘呢?我用JS实现了一下,代码如下:

复制代码 代码如下:

console.log(bigMut("567", "1234")); // 699678
function bigMut(big, common) {
big += "";
common += "";
if (big.length big = [common, common = big][0];
}
big = big.split("").reverse();
var oneMutManyRes = [];
var i = 0,
len = big.length;
for (; i oneMutManyRes[oneMutManyRes.length] = oneMutMany(big[i], common) + getLenZero(i);
}
var result = oneMutManyRes[0];
for (i = 1, len = oneMutManyRes.length; i result = bigNumAdd(result, oneMutManyRes[i]);
}
return result;
}
function getLenZero(len) {
len += 1;
var ary = [];
ary.length = len;
return ary.join("0");
}
function oneMutMany(one, many) {
one += "";
many += "";
if (one.length != 1) {
one = [many, many = one][0];
}
one = parseInt(one, 10);
var i = 0,
len = many.length,
resAry = [],
addTo = 0,
curItem,
curRes,
toSave;
many = many.split("").reverse();
for (; i curItem = parseInt(many[i] || 0, 10);
curRes = curItem * one + addTo;
toSave = curRes % 10;
addTo = (curRes - curRes % 10) / 10;
resAry.unshift(toSave);
}
if (resAry[0] == 0) {
resAry.splice(0, 1);
}
return resAry.join("");
}
function bigNumAdd(big, common) {
big += "";
common += "";
var maxLen = Math.max(big.length, common.length),
bAry = big.split("").reverse(),
cAry = common.split("").reverse(),
i = 0,
addToNext = 0,
resAry = [],
fn,
sn,
sum;
for (; i fn = parseInt(bAry[i] || 0);
sn = parseInt(cAry[i] || 0);
sum = fn + sn + addToNext;
addToNext = (sum - sum % 10) / 10;
resAry.unshift(sum % 10);
}
if (resAry[0] == 0) {
resAry.splice(0, 1);
}
return resAry.join("");
}
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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

<🎜>: Bubble Gum Simulator Infinity - Cara Mendapatkan dan Menggunakan Kekunci Diraja
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Sistem Fusion, dijelaskan
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Cara Membuka Kunci Cangkuk Bergelut
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Tutorial Java
1671
14
Tutorial PHP
1276
29
Tutorial C#
1256
24
Bagaimana untuk menukar DateTime kepada integer dalam Python? Bagaimana untuk menukar DateTime kepada integer dalam Python? Sep 05, 2023 pm 10:21 PM

Manipulasi nilai tarikh dan masa adalah aspek penting dalam pengaturcaraan, dan bahasa Python menyediakan modul terbina dalam yang berguna untuk ini dipanggil datetime. Walau bagaimanapun, dalam beberapa kes, anda mungkin perlu menukar objek DateTime kepada nilai integer untuk melaksanakan operasi atau pengiraan tertentu. Terdapat pelbagai cara untuk menukar DateTime kepada integer dalam Python, masing-masing mempunyai kelebihan dan kekurangannya sendiri. Dalam artikel ini, kita akan melihat dengan lebih dekat kaedah ini dan memeriksa apabila setiap kaedah sesuai digunakan. Selepas membaca artikel ini, anda akan mempunyai pemahaman yang lengkap tentang cara menukar objek DateTime dengan cekap kepada integer dalam Python dan boleh memilih kaedah yang paling sesuai untuk tugas pengaturcaraan khusus anda. Kaedah 1: Gunakan cap masa

Bagaimana untuk menukar integer kepada perpuluhan dalam javascript Bagaimana untuk menukar integer kepada perpuluhan dalam javascript Nov 03, 2021 pm 05:59 PM

Dalam JavaScript, anda boleh menggunakan fungsi toFixed() untuk menukar integer kepada perpuluhan Fungsi ini boleh menukar integer kepada nombor dengan nombor tempat perpuluhan yang ditentukan ialah "number.toFixed(x)", dan parameter "x" menentukan bilangan tempat perpuluhan.

Apakah ungkapan biasa untuk integer? Apakah ungkapan biasa untuk integer? Nov 14, 2023 pm 04:11 PM

Ungkapan biasa untuk integer ialah: 1. Padankan integer positif: ^[1-9]\d*$; :^-?\d+$; 4. Padankan integer bukan sifar: ^(0|[1-9]\d*)$;

Sijil SSL pemasangan Sharepoint? Sijil SSL pemasangan Sharepoint? Feb 19, 2024 am 11:27 AM

Memasang sijil SSL pada SharePoint ialah langkah penting dalam melindungi tapak web anda dan menyediakan sambungan yang disulitkan. Dengan mengikut langkah pemasangan yang betul, anda boleh memastikan keselamatan data tapak web anda, meningkatkan kedudukan anda dalam enjin carian dan memberikan pengalaman pengguna yang lebih baik untuk pelawat anda. Dapatkan Sijil SSL Hubungi Pihak Berkuasa Sijil (CA) yang dipercayai untuk membeli sijil SSL. Berikan maklumat pengesahan dan pengesahan pemilikan domain yang diperlukan. Selepas melengkapkan proses pengesahan, anda akan menerima fail sijil SSL. Sediakan Fail Sijil Buka fail sijil SSL anda menggunakan penyunting teks. Salin kandungan sijil ke fail teks baharu. Simpan fail sebagai yourdomain.cer, pastikan untuk menukar "yourdomain&#8221

Program Python untuk mendarab dua matriks menggunakan tatasusunan berbilang dimensi Program Python untuk mendarab dua matriks menggunakan tatasusunan berbilang dimensi Sep 11, 2023 pm 05:09 PM

Matriks ialah satu set nombor yang disusun dalam baris dan lajur. Matriks dengan m baris dan n lajur dipanggil matriks mXn, dan m dan n dipanggil dimensinya. Matriks ialah tatasusunan dua dimensi yang dibuat dalam Python menggunakan senarai atau tatasusunan NumPy. Secara umum, pendaraban matriks boleh dilakukan dengan mendarab baris matriks pertama dengan lajur matriks kedua. Di sini, bilangan lajur matriks pertama hendaklah sama dengan bilangan baris matriks kedua. Senario input dan output Katakan kita mempunyai dua matriks A dan B. Dimensi kedua-dua matriks ini ialah 2X3 dan 3X2 masing-masing. Matriks yang terhasil selepas pendaraban akan mempunyai 2 baris dan 1 lajur. [b1,b2][a1,a2,a3]*[b3,b4]=[a1*b1+a2*b2+a3*a3][a4,a5,a6][b5,b6][a4*b2+a

Bagaimana untuk menukar cap waktu kepada integer dalam PHP Bagaimana untuk menukar cap waktu kepada integer dalam PHP Mar 20, 2024 pm 04:24 PM

Cap masa dalam PHP ialah bentuk integer yang mewakili masa, biasanya bilangan saat yang telah berlalu sejak tahun pertama Unix (1 Januari 1970 00:00:00 GMT). Dalam pengaturcaraan, kita selalunya perlu menukar cap masa kepada bentuk integer yang lain Di sini kita akan memperkenalkan cara menukar cap masa PHP kepada integer, serta contoh kod tertentu. Dalam PHP, kita boleh menggunakan fungsi strtotime() untuk menukar rentetan masa kepada cap waktu dan kemudian menggunakan tarikh

Cara menggunakan fungsi pendaraban Excel Cara menggunakan fungsi pendaraban Excel Mar 20, 2024 pm 01:00 PM

Kami sering menggunakan jadual Excel dalam kerja seharian Adakah anda tahu fungsi di dalamnya? Seperti fungsi bahagi, fungsi VLOOKUP, fungsi IF, fungsi pendaraban Excel, dan lain-lain, kami telah mempelajari beberapa fungsi pertama, jadi hari ini saya akan membawa anda mempelajari fungsi pendaraban Excel bersama-sama Langkah-langkah operasi khusus adalah di bawah, sila ambil lihat dengan teliti! 1. Mula-mula, kita buka jadual EXCEL Kita nak kira jumlah harga setiap buah, maka kita perlu gunakan harga unit * kuantiti, (seperti gambar di bawah). 2. Kemudian, kita masukkan fungsi pendaraban [=B2*C2] dalam baris D2 jadual, dan kemudian klik kekunci Enter [Enter] pada papan kekunci (seperti yang ditunjukkan dalam bulatan merah dalam rajah di bawah). 3

Bagaimana untuk menukar rentetan kepada integer menggunakan kaedah parseInt() kelas Integer Bagaimana untuk menukar rentetan kepada integer menggunakan kaedah parseInt() kelas Integer Jul 25, 2023 pm 05:21 PM

Cara menggunakan kaedah parseInt() kelas Integer untuk menukar rentetan kepada integer Dalam pengaturcaraan, kita selalunya perlu menukar rentetan kepada integer. Java menyediakan kaedah yang sangat mudah, iaitu menggunakan kaedah parseInt() kelas Integer untuk melaksanakan fungsi ini. Artikel ini akan memperkenalkan secara terperinci penggunaan kaedah parseInt() kelas Integer dan menyediakan beberapa kod sampel untuk menggunakan kaedah ini. Kelas Integer ialah salah satu kelas pembalut yang mewakili integer dalam Java.

See all articles