问答文章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-13 13:19

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-13 13:20

看那个fisher的吧

热心网友 时间:2024-11-13 13:20

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

热心网友 时间:2024-11-13 13:21

double都数据溢出

热心网友 时间:2024-11-13 13:22

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

热心网友 时间:2024-11-13 13:22

膜拜 小fisher!

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

真牛!抽空要吃透你的算法
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
什么车险可以分期花呗 请问“有几个虫子怕什么"改为陈述句是"有几个虫子不可怕"。为什么要加... 一只狼身边有一只羊为什么狼不吃羊? 路边有一只羊,过来一只狼,却没有吃羊,为什么? ...有没有一个厂叫【福高】厂的,是做电子产品的。。3Q 明道冒险王百度云如何下载 冒险王2cps联系谁? 350分到400分的二本大学 廊坊高考400分能上什么学校 河北2023年高考400分左右能上什么大学 美食博主的视频是自己拍出来的吗? 中华慈善是什么意思? 紧急求助:有谁知道下午从遂宁安居到绵阳的汽车是几点?急!急!…… 谁知道自贡到乐至的汽车车是几点啊?请知道的回答,不知道的别乱说免得... 请教一下VB大神!!这几个题要怎么做???周六就考试啦………拜托拜托,谢谢... 从奉节县到乐至县怎么坐车? 车费多少啊? 时间多长?车次是多少?_百度... 重庆到乐至有多少班车,在哪里可以坐,一般几个小时可以到乐至_百度知 ... 乐至有没有到江北机场的车 重庆江北机场到四川乐至省怎么坐车 乐至客车 I'M Ready [Live From New York City] 歌词 QQ丝路英雄,八骏图碎片在哪里刷? 如图表示人体内几种化学元素和化合物的相互关系,其中a、b表示有机小分... 如图,表示人体内几种化学元素和化合物的相互关系,其中a、b表示有机... 怎么在抖音找到直播录屏的视频? 小米路由器AC2100型号R2100双频千兆无线路由器怎么安装 ...用英语介绍一下中国的三个传统节日(中秋节,端午节,春节),内容不少于... ...人在国内,想去加拿大驻广州领事馆开单身证明,结婚急用,有谁知道怎么... 急问:一台星星牌三开门冰箱,制冷剂600A,高压漏,挂散热器以后,出现散 ... 通电 星星冷柜 损害 请教诸位一个vb问题,为什么下列代码运行时出现下标越界 中华慈善会分红是好事还是恶性 咳嗽有痰是热咳吗 2024琼海世界热带水果之窗门票多少钱 问一下用单反拍美食怎么拍比较好 咳嗽有痰是热咳吗 相互宝分摊怎么取消?可以介绍一下吗? 第十九届上海国际生鲜食材农产品新零售社区社群团购博览会 后秘贴精华液适合什么年龄 吉林市丰满区第一实验小学校三年级有哪些老师 有谁了解咳嗽有黄痰是什么原因 丰满区第一实验小学在哪? 怎么关闭相互宝分摊?可以介绍一下吗? 微信设置不让对方看朋友圈是什么意思? 侯开苑工作实绩 赵秋伟黑河市财政局预算科科长 痰是黄色的属于热咳还是寒咳 请教一下VB大神!!这几个题要怎么做???周六就考试啦………拜托拜托,谢谢... 请教VB高手们 请教诸位一个vb问题,为什么下列代码运行时出现下标越界