求好的思路和算法 hex取值
随机输入一个16进制数字m,通过函数输出n个2进制下校验和为1的数组,并能满足n1+n2+...=m;:例如0x05,需要通过程序后输出 0x01 ,0x04.
给出解答1:
arg[]={0x01;0x02;0x04;0x08;0x10;0x20;0x40;0x80};
for(i=0;i<8;i++)
{
n = m&arg[i];
if(n)
output(n);
else
continue;
}
求高效稳定算法。
[解决办法]
“通过函数输出n个2进制下校验和为1的数组”
这句话是什么意思?
什么叫校验和为1的数组?
[解决办法]
[code=C/C++][/code]
while(i<8)
{
n = m&arg[i];
if(n)
outpur(n);
else
i++;
}