由于区块链的去中心化特性,可确保抽奖结果的公平公正
窗口程序集名 | 保 留 | 保 留 | 备 注 | 窗口程序集_启动窗口 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 用户ID | 整数型 | | 0 | i | 整数型 | | | 中奖用户 | 整数型 | | 0 | hash | 文本型 | | |
计次循环首 (100, i ) 加入成员 (用户ID, i ) 计次循环尾 () hash = “a139ba905b95c1c8aa45ec9bfa9e783a67d0731e80601450aaacd38e9746f40e” 重定义数组 (中奖用户, 假, 2 ) 抽奖 (hash, 用户ID, 中奖用户 )调试输出 (“中奖ID”, 中奖用户 )变量名 | 类 型 | 静态 | 数组 | 备 注 | dec | 文本型 | | | index | 整数型 | | | i | 整数型 | | | res | 整数型 | | 0 |
dec = 十六到十 (hex ) 计次循环首 (取数组成员数 (中奖用户 ), i ) index = 到整数 (大数运算 (dec, 取数组成员数 (用户ID ), “mod”)) + 1  中奖用户 [i ] = 用户ID [index ] 删除成员 (用户ID, index, 1 ) 计次循环尾 ()变量名 | 类 型 | 静态 | 数组 | 备 注 | tmp | 文本型 | | | str | 文本型 | | | i | 整数型 | | | res | 文本型 | | |
tmp = “0123456789ABCDEF”str = 到大写 (hex ) 计次循环首 (取文本长度 (hex ), i ) res = 大数运算 (res, 16, “mul”) res = 大数运算 (res, 寻找文本 (tmp, 取文本中间 (str, i, 1 ), , 假) - 1, “add”) 计次循环尾 ()返回 (res )|
大数运算 | 文本型 | | |
数值1 | 文本型 | | | | 数值2 | 整数型 | | | | 类型 | 文本型 | | | |
a. 导入文本 (数值1 )b. 导入数字 (数值2 ) 判断 (类型 = “add”) 返回 (a. 加 (b ). 导出文本 ()) 判断 (类型 = “sub”) 返回 (a. 减 (b ). 导出文本 ()) 判断 (类型 = “mul”) 返回 (a. 乘 (b ). 导出文本 ()) 判断 (类型 = “mod”) 返回 (a. 求余 (b ). 导出文本 ())  返回 (“0”)
|