中易网

vb 十进制转二进制 大数模幂运算的快速算法

答案:2  悬赏:50  
解决时间 2021-01-11 17:57
  • 提问者网友:孤凫
  • 2021-01-11 03:12
vb 十进制转二进制 大数模幂运算的快速算法
最佳答案
  • 二级知识专家网友:北方的南先生
  • 2021-01-11 04:20
图省事,没做界面,你自己改一下吧,代码和效率可都是大大提高了哦!
Option Explicit
Private Function modular(a As Integer, b As Integer, n As Integer) As Long
Dim f As Long
If b = 0 Then
f = 1
Else
If b = 1 Then
f = a Mod n
Else
f = modular(a, b \ 2, n) * modular(a, b \ 2, n) Mod n
If b Mod 2 = 1 Then f = f * a Mod n
End If
End If
modular = f
End Function

Private Sub Command1_Click()
Dim a As Integer, b As Integer, n As Integer
'a = txta.Text
' b = txtb.Text
'n = txtn.Text
a = "2"
b = "30"
n = "10000"
'txtresult.Text = CStr(modular(a, b, n))
Print CStr(modular(a, b, n))
End Sub
全部回答
  • 1楼网友:十鸦
  • 2021-01-11 04:38
'把这几句
a = txta.Text
b = txtb.Text
n = txtn.Text
'改为:
a =val(txta.Text)
b = val(txtb.Text)
n = val(txtn.Text)
试试
追问:还是不对啊
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息