反向计算需要先知道 数 这个参数,然后从下到上,加减交换依次计算就可以了。
窗口程序集名 | 保 留 | 保 留 | 备 注 | 窗口程序集_启动窗口 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 数 | 长整数型 | | | 结果 | 长整数型 | | |
数 = 88333 结果 = 加密 (数 )调试输出 (解密 (结果, 数 ) = -1908683585, 结果 )变量名 | 类 型 | 静态 | 数组 | 备 注 | 初始值 | 长整数型 | | | 结果值 | 长整数型 | | | 数64 | 长整数型 | | | 数1024 | 长整数型 | | | 数16384 | 长整数型 | | |
初始值 = -1908683585 结果值 = 初始值 - 数 数64 = 绝对取整 (数 ÷ 64 )数1024 = 绝对取整 (数 ÷ 1024 )数16384 = 绝对取整 (数 ÷ 16384 )如果 (数 % 2 = 0 )结果值 = 结果值 - 1 结果值 = 结果值 + 1 如果 (绝对取整 (数64 ÷ 2 ) % 2 ≠ 0 )结果值 = 结果值 + 128 (数64 - 2 )结果值 = 结果值 + 128 × 数64 如果真 (数1024 > 0 )结果值 = 结果值 - 2048 (数1024 % 4 )如果真 (数16384 > 0 )结果值 = 结果值 - 32768 × 数16384 返回 (结果值)变量名 | 类 型 | 静态 | 数组 | 备 注 | 数64 | 长整数型 | | | 数1024 | 长整数型 | | | 数16384 | 长整数型 | | |
数64 = 绝对取整 (数 ÷ 64 )数1024 = 绝对取整 (数 ÷ 1024 )数16384 = 绝对取整 (数 ÷ 16384 )如果真 (数16384 > 0 )结果值 = 结果值 + 32768 × 数16384 如果真 (数1024 > 0 )结果值 = 结果值 + 2048 (数1024 % 4 )如果 (绝对取整 (数64 ÷ 2 ) % 2 ≠ 0 )结果值 = 结果值 - 128 (数64 - 2 )结果值 = 结果值 - 128 × 数64 如果 (数 % 2 = 0 )结果值 = 结果值 + 1 结果值 = 结果值 - 1 结果值 = 结果值 + 数返回 (结果值)
|