给出一系列7位,10位或11位的数字,能够换算成8的数字,且是唯一的,请问数学上有什么算法.

解决方案 »

  1.   

    怎么个换算成8?怎么个唯一法?
      

  2.   

    简单地,编一个加上求余后总共8位的函数。
    数学方法有无数个。
    看你需要而言。
      

  3.   

    具体得应用说明:给你一个发票号,这个号是唯一得,但位数可能是7位,10位等,取其中一个经过换算变为一个8位数,这样,生成n个8位数,这些8位数不会重复(在8位内)
      

  4.   

    无符号8位最多也就256,怎么会不重复?
    把发票号分成256个区,取它的区号好了.
      

  5.   

    严格的说是不可能的.
    10位数比8位数多,怎么可能唯一呢?
    不过明显那个发票号是用不了0~9999999999中所有数的,先得要找规律看用过了那一部分的数,然后再想这一部分数到8位数的算法
      

  6.   

    那这么说吧。
    随机生成一个密码,8位数,必须是唯一得,且为了提高运算速度,不通过比较方式获得唯一值。这样生成n个密码,不知道各位有什么好得提议。上边是我想得一种方式。