[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

【出题】批处理显示一个数等于哪些2的n次方数的和

输入一个正整数(cmd范围内)显示它是哪些2的n次方数的和。
有点说不清楚,呵。。
举几个例子
如:
8=8
15=1+2+4+8
25=1+8+16
256=256
273=1+16+256

[ 本帖最后由 随风 于 2009-3-22 01:48 编辑 ]
技术问题请到论坛发帖求助!

回复 3楼 的帖子

pusofalse兄所说的位运算,不知是否指获取2的n次方?
我的代码中发现用位运算还不如直接计算来的方便,到时期待兄的代码。
技术问题请到论坛发帖求助!

TOP

回复 5楼 的帖子

太期待了!!!!!!!!!!
技术问题请到论坛发帖求助!

TOP

终于知道如何用 位运算 来作了,谢pusofalse的指点。
技术问题请到论坛发帖求助!

TOP

回复 8楼 的帖子

是否不用这么麻烦,
另兄的代码还可精简。
  1. @echo off&setlocal enabledelayedexpansion
  2. set "x=!random!"
  3. set /p=!x!=<nul
  4. for /l %%i in (0 1 31) do (
  5.     set /a a="x&1","x>>=1"
  6.     if !a! equ 1 set /a b="1<<%%i"&set/p=!b!+<nul
  7. )
  8. set /p= <nul & echo.
  9. pause>nul
复制代码

[ 本帖最后由 随风 于 2009-3-22 01:18 编辑 ]
技术问题请到论坛发帖求助!

TOP

回复 12楼 的帖子

哈哈,但是都是以你的思路为核心啊,大家都放出代码来吧。。。
技术问题请到论坛发帖求助!

TOP

返回列表