问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

请教VB高手们

发布网友 发布时间:2024-10-16 12:21

我来回答

6个回答

热心网友 时间:2024-11-09 18:16

OK,我前面说错了,更正如下:

如果以科学计数法计算的话大概是这样:
3456^321
=10^(321*log3456/log10)
=10^1135.882168552
=7.62374834347224E+1135

以VB计算精确结果时,可自定义一个Long型数组,每个数组元素代表一个万进制的位,即每次将每个数组内的数值乘以3456,然后将超出10000的部分除以10000后进到上一位,也就是下一数组元素,将余数保留在当前位上,即当前数组元素中,循环运算321次后即得到最终结果,最后将最终结果使用字符串连接输出。
Private Sub Form_Load()
Dim result() As Long 'Long型数组,每个数组元素为一个“万进制”的位
Dim i As Integer, j As Integer '计数器
Dim lUbound As Integer '万进制的总位数

lUbound = 0
ReDim result(0) As Long
result(0) = 3456 '初始值为3456
For i = 1 To 320 '循环运算320次
For j = 0 To lUbound '将每个数组元素中的数值乘以3456
result(j) = result(j) * 3456
Next

For j = 0 To UBound(result) '检查每个数组元素中的数值
If result(j) > 10000 Then '如果数值大于10000,则进位
If j = lUbound Then '在进位前检查数组边界
lUbound = lUbound + 1
ReDim Preserve result(lUbound)
End If
'进位的计算很简单,将大于10000的部分除以10000后进到上一位
result(j + 1) = result(j + 1) + result(j) \ 10000
'在原位上保留除以10000的余数
result(j) = result(j) Mod 10000
End If
Next
Next

'将全部结果连接到字符串中输出
For i = 0 To lUbound - 1
s = Format(result(i), "0000") & s
Next
s = result(i) & s
Text1.Text = s
Label1.Caption = "结果位数:" & Len(s)
End Sub

结果为:
76237483434840499889712426626096473963909931068247124172638199410539220053201610161450464002066939280638926925260420270154405231799447495245320436731301665931283240952660137358086907368044339121830531635848144441450568772821508287993467666438181243885755554898792836015603432708062302977998759211291131951767699978019004975330695697054793042155499221429969567052855745935136659823726845527843445136329342404766218345920692702081484144369600981406896399390541306496661397639380287227282800034638166780330382244829304071880825807023908154340005769742217325779028244644751599980322315632760625170290738351846477618573880996099932351295352950325271332844044331635038371782148986666758477217714762990062214571539825801641194903714821706518619256060414384827023948648226598364217388537480320237522075748433090727539744419610978258782969527316532158732245819802526035446474729194329275609908892767737827957808489590052473741556582857491245840372887253113107060668452433190374614955680014306887060608525003501743593527880304666492270653920664564390716079811354086365433698310713603357154393047253283255434103929871965354687684095494867235373056

热心网友 时间:2024-11-09 18:16

看那个fisher的吧

热心网友 时间:2024-11-09 18:17

如果你想算出结果,我想普通计算机不行,内存太小会溢出,你可以找超级计算机“天河”试试,应该可以,

热心网友 时间:2024-11-09 18:17

double都数据溢出

热心网友 时间:2024-11-09 18:18

用字符的方式模仿乘法计算,这方式在C、C++语言比较常见,但VB中不常见

热心网友 时间:2024-11-09 18:19

膜拜 小fisher!

我用模拟笔算写的乘法算法,用在这个题目里就是不断乘3456,效率比你低近百倍,编译后更是低几百倍(优化全开)

真牛!抽空要吃透你的算法
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
什么车险可以分期花呗 请问“有几个虫子怕什么"改为陈述句是"有几个虫子不可怕"。为什么要加... 一只狼身边有一只羊为什么狼不吃羊? 路边有一只羊,过来一只狼,却没有吃羊,为什么? ...有没有一个厂叫【福高】厂的,是做电子产品的。。3Q 明道冒险王百度云如何下载 冒险王2cps联系谁? 350分到400分的二本大学 廊坊高考400分能上什么学校 河北2023年高考400分左右能上什么大学 无双大蛇z天阵怎么才能得到 请教一下VB大神!!这几个题要怎么做???周六就考试啦………拜托拜托,谢谢... 大蛇无双Z 发动不了合体技,明明已经武器里面有了天阵了,但两个换人键... 请教诸位一个vb问题,为什么下列代码运行时出现下标越界 请教VB高手们 请教一下VB大神!!这几个题要怎么做???周六就考试啦………拜托拜托,谢谢... 痰是黄色的属于热咳还是寒咳 赵秋伟黑河市财政局预算科科长 侯开苑工作实绩 微信设置不让对方看朋友圈是什么意思? 怎么关闭相互宝分摊?可以介绍一下吗? 丰满区第一实验小学在哪? 有谁了解咳嗽有黄痰是什么原因 吉林市丰满区第一实验小学校三年级有哪些老师 后秘贴精华液适合什么年龄 第十九届上海国际生鲜食材农产品新零售社区社群团购博览会 相互宝分摊怎么取消?可以介绍一下吗? 咳嗽有痰是热咳吗 问一下用单反拍美食怎么拍比较好 2024琼海世界热带水果之窗门票多少钱 请教诸位一个vb问题,为什么下列代码运行时出现下标越界 ...但是今天实在没力气也没时间,念不完会有报应吗... 发愿后忘记了而没做到会有报应吗 2013年河南泌阳招教考试,我报的是幼师,笔试的部分,都考什么科目啊?用不... ...现在后悔了,如果我去剪平头头发会长直吗... ...现在后悔了,如果我去剪平头头发会长直吗... ...前些天做了纹理烫,现在后悔了,如果我去剪平头头发会长直吗... 我今天去烫了一个纹理烫烫完就后悔了头发卷卷的好猥琐想把它变直有... 步步高vivo e3 玩游戏的功能怎么样 我手机是步步高'vivoE3用了两年了现在远行点慢,怎么办 我手机是步步高vivo e3最近总是卡屏关机管不了其他按键按了也没反应... 咳嗽有痰是热咳吗 我e3型号的手机 ...气垫纹理烫后悔啊!感觉发梢往外卷 而且外卷的那部分还..._百度... 咳嗽有痰是热咳吗 有谁了解咳嗽有黄痰是什么原因 vivo e3的问题。很急。。 痰是黄色的属于热咳还是寒咳 皮蛋吃了会变笨吗 什锦烩面做法