查看: 1840|回复: 2

[随意闲聊] 用QB编写程序

[复制链接]
梦石
0
星屑
4810
在线时间
286 小时
注册时间
2013-10-13
回帖
585
发表于 2014-1-13 17:27:55 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
5.输入两个正整数a,b。其中:b最大不超过999,a不大于31。使a在左,b在右,拼接成一个新的数c。例如:a=2,b=16,则c=216;若a=18,b=476,则c=18476。   
提示:求c的公式为:c=a×K+b   
其中: k=10 ,当B为一位数时(0<b<10);k=100,当B为两位数时(10<=b<100);k=1000,当B为三位数时(100<=b<1000)

点评

我不是叔……  发表于 2014-1-14 14:31
梦石
0
星屑
2826
在线时间
2634 小时
注册时间
2013-1-16
回帖
5453

贵宾

发表于 2014-1-13 18:23:06 | 显示全部楼层
本帖最后由 myownroc 于 2014-1-13 18:24 编辑

下次不要发错区
  1. l = len(str(b))
  2. k = 10^l
  3. c = a*k + b
复制代码
未测试过,目测可以。

点评

好的,MY叔  发表于 2014-1-14 13:36
刚发完点评就发现自己真是个逗比,你们慢慢讨论我默默吃翔_(:з」∠)_  发表于 2014-1-13 23:25
幂运算是*”不是^哦~^是异或运算的说~  发表于 2014-1-13 23:21
(Created by @喵kano)


施工现场:hotege.github.io
回复

使用道具 举报

梦石
0
星屑
3703
在线时间
3081 小时
注册时间
2011-11-17
回帖
943
发表于 2014-1-14 21:37:43 | 显示全部楼层
本帖最后由 yagami 于 2014-1-14 21:46 编辑
myownroc 发表于 2014-1-13 18:23
下次不要发错区未测试过,目测可以。


用了字符窜 还不如 (a.to_s+b.to_s).to_i呢- -
本质上算法 不能和字符窜打交道 要完全当数处理
int k = 1;
int d = b;
while(d>0)
{
    d/=10;
    k*=10;
}
c =a*k+b

点评

好吧 我漏*10了  发表于 2014-1-14 21:43
差不多 反正就这原理  发表于 2014-1-14 21:42
另外,是字符串(chuan)  发表于 2014-1-14 21:41
好吧,我偷懒了……没写循环……ps:楼主要的是QBasic  发表于 2014-1-14 21:41
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部