找回密码
 加入
搜索
查看: 3561|回复: 20

给大家出个题目玩玩

[复制链接]
发表于 2021-4-6 17:13:34 | 显示全部楼层 |阅读模式
要求: 定义一个函数,要求能够输出任意进制(1-10,16进制吧)的第N个数。
格式:结果 = func(进制,N)
例如:
func(2,100) 返回 1100011
func(8,100) 返回 143
func(16,100) 返回 63

大家各自搞个回复可见,以免影响其他人的思路。
发表于 2021-4-6 18:09:12 | 显示全部楼层
2-10吧 1肿麽玩
模N取余
 楼主| 发表于 2021-4-6 18:27:55 | 显示全部楼层
afan 发表于 2021-4-6 18:09
2-10吧 1肿麽玩
模N取余

嗯,1进制属于特例了。2-10,16进制吧
发表于 2021-4-6 18:43:14 | 显示全部楼层
游客,如果您要查看本帖隐藏内容请回复

点评

处理大数字,速度也很快,没分了,手动点赞  发表于 2021-9-2 21:24

评分

参与人数 1威望 +1 金钱 +99 收起 理由
haijie1223 + 1 + 99 奥利给!

查看全部评分

 楼主| 发表于 2021-4-6 19:23:06 | 显示全部楼层
afan 发表于 2021-4-6 18:43
**** 本内容被作者隐藏 ****

游客,如果您要查看本帖隐藏内容请回复



a版表驱动大法NB啊。我只想到了用递归写法,而且这写法还无法解决0的占位问题。
发表于 2021-4-6 19:28:08 | 显示全部楼层
好难,我还是先看看进制转换吧
发表于 2021-4-6 19:55:28 | 显示全部楼层
本帖最后由 zghwelcome 于 2021-4-6 21:42 编辑

不会搞
游客,如果您要查看本帖隐藏内容请回复

发表于 2021-4-6 22:57:31 | 显示全部楼层
haijie1223 发表于 2021-4-6 19:23
**** 本内容被作者隐藏 ****

递归一直不怎么用,有效率问题和层次限制…
当然递归也有方便之处,比如可以简化循环结构
发表于 2021-4-7 11:16:37 | 显示全部楼层
原来你们都躲在这里
发表于 2021-4-7 11:24:57 | 显示全部楼层
虽然不会,但带着仰慕的心情学习下
 楼主| 发表于 2021-4-9 12:17:00 | 显示全部楼层
小兵 发表于 2021-4-7 11:16
原来你们都躲在这里

这是深度的小兵?
发表于 2021-4-13 13:35:08 | 显示全部楼层
MsgBox(0, 0, _BaseCalc(2, 100))
Func _BaseCalc($b, $n)
        $sRt = ''
;~         $n -= 1    按要求应该要加这么一句
        While 1
                If $n < $b Then Return _nCalc($n) & $sRt
                $sRt = _nCalc(Mod($n, $b)) & $sRt
                $n = Int($n/$b)
        WEnd
EndFunc

Func _nCalc($n)
        Return $n>9 ? Chr($n+55) : $n
EndFunc




func(2,100) 返回 1100011
func(8,100) 返回 143
func(16,100) 返回 63

这是认真的吗......


发表于 2021-4-13 16:11:22 | 显示全部楼层
太难了,楼上的好像答案跟楼主的不一样
发表于 2021-4-13 18:03:19 | 显示全部楼层
驱动大法NB
发表于 2021-5-26 14:48:43 | 显示全部楼层
看看版主的回答
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-25 07:53 , Processed in 0.078627 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表