vb 十進位制轉二進位制 大數模冪運算的快速演算法

時間 2022-04-14 05:49:30

1樓:聽不清啊

圖省事,沒做介面,你自己改一下吧,**和效率可都是大大提高了哦!

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

2樓:難得糊塗

'把這幾句

a = txta.text

b = txtb.text

n = txtn.text

'改為:

a =val(txta.text)

b = val(txtb.text)

n = val(txtn.text)試試

十進位制轉二進位制 c語言,十進位制轉二進位制 C語言

由於十進位制在轉換為二進位制的時候需要反序輸出,你的這個程式是正續輸出的,就不正確的恩,就需要定義乙個陣列的呢。現給你乙個更加完整的程式如下 include include void main if m int m 選擇性計算,如果是整數就不用進行這一步的計算了,這樣可以節約程式的執行時間 prin...

C 十進位制轉二進位制,C 十進位制轉化二進位制寫法

include using namespace std void dec2bin int n if n 1 dec2bin n 2 cout int n cin n dec2bin n return 0 c 十進位制轉化二進位制寫法 十進位制整數轉換為二進位制整數採用 除2取餘,逆序排列 法。具體做...

c二進位制轉十進位制,二進位制如何轉為十進位制 浮點數 c

這個問題很基礎,先給你說說思路,然後再告訴你 首先,輸入乙個字串。由於一般整數int型別為4個位元組,32位。所以要求輸入的字串不能超過32位,超過了的話,在程式中就無法顯示出來了。其次,判定字串的長度 可以用strlen 也可以用別的方式 加入字串長度為i。從字串第一位開始判定,如果字元第j位是 ...

二進位制數轉十進位制數的演算法,十進位制轉二進位制演算法

你可以這樣看 十進位制例子 1 1 1 1 原始值 3 2 1 0 次方數 10 10 10 10 進製值 1000 100 10 1 每一位得出值 進製值的次方數x原始值 得出 1111 每一位得出值相加 二進位制例子 1 1 1 1 原始值 3 2 1 0 次方數 2 2 2 2 進製值 8 4...

二進位制01101轉十進位制,將二進位制數1101轉換為十進位制數是多少

二進位制0.1101轉十進位制為0.8125,0.1101是二進位制小數,可以利用 按權求和 法進行計算。具體計算過程 1乘以2的負1次方等於0.5,1乘以2的負2次方等於0.25,0乘以2的負3次方等於0,1乘以2的負4次方等於0.0625。最後將所有的結果進行求和,得出十進位制數0.8125。擴...