设为首页收藏本站淘宝杂货铺

从F到0 - From F to 0

 找回密码
 注册已关闭
搜索
查看: 3192|回复: 7
收起左侧

易语言 取随机长整数 范围:-9223372036854775808~9223372036854775807 (返回长整数型)

[复制链接]
发表于 2020-4-10 17:15:52 | 显示全部楼层 |阅读模式
本帖最后由 CNWTEPRG 于 2020-4-10 17:14 编辑

1.png

  1. .版本 2
  2. .支持库 eCalc

  3. .程序集 程序集1

  4. .子程序 _启动子程序, 整数型, , 请在本子程序中放置易模块初始化代码

  5. 置随机数种子 ()
  6. _临时子程序 ()  ' 在初始化代码执行完毕后调用测试代码
  7. 返回 (0)  ' 可以根据您的需要返回任意数值

  8. .子程序 _临时子程序
  9. .局部变量 最小值, 长整数型
  10. .局部变量 最大值, 长整数型
  11. .局部变量 随机数, 长整数型

  12. 最小值 = -10000
  13. 最大值 = 10000
  14. .计次循环首 (100, )
  15.     随机数 = 取长随机数 (最小值, 最大值)
  16.     .如果真 (随机数 < 最小值 或 随机数 > 最大值)
  17.         暂停 ()
  18.     .如果真结束
  19.     输出调试文本 (随机数)
  20. .计次循环尾 ()

  21. .子程序 取长随机数, 长整数型, 公开, 在使用本命令取一系列的随机数之前,应该先使用“置随机数种子”命令为随机数生成器初始化一个种子值。
  22. .参数 欲取随机数的最小值, 长整数型, 可空, 留空默认 -9223372036854775808
  23. .参数 欲取随机数的最大值, 长整数型, 可空, 留空默认 9223372036854775807
  24. .局部变量 最小值, 大数
  25. .局部变量 最大值, 大数
  26. .局部变量 随机数, 大数
  27. .局部变量 随机数据, 字节集
  28. .局部变量 指针, 整数型
  29. .局部变量 常量, 大数, 静态, , 固定:9223372036854775808
  30. .局部变量 常量1, 大数, 静态, , 固定:1
  31. .局部变量 INT_MIN, 长整数型, 静态, , 固定:-9223372036854775808
  32. .局部变量 INT_MAX, 长整数型, 静态, , 固定:9223372036854775807
  33. .局部变量 随机长整数, 长整数型

  34. .如果真 (INT_MIN = 0 或 INT_MAX = 0)
  35.     INT_MIN = 取字节集数据 ({ 0, 0, 0, 0, 0, 0, 0, 128 }, #长整数型, )
  36.     INT_MAX = 取字节集数据 ({ 255, 255, 255, 255, 255, 255, 255, 127 }, #长整数型, )
  37.     常量.导入文本 (“9223372036854775808”)
  38.     常量1.导入数字 (1)
  39. .如果真结束
  40. 欲取随机数的最小值 = 选择 (是否为空 (欲取随机数的最小值), INT_MIN, 欲取随机数的最小值)
  41. 欲取随机数的最大值 = 选择 (是否为空 (欲取随机数的最大值), INT_MAX, 欲取随机数的最大值)
  42. .判断开始 (欲取随机数的最大值 < 欲取随机数的最小值)
  43.     交换变量 (欲取随机数的最大值, 欲取随机数的最小值)
  44. .判断 (欲取随机数的最大值 = 欲取随机数的最小值)
  45.     返回 (欲取随机数的最小值)
  46. .默认

  47. .判断结束
  48. 最小值.导入数字 (欲取随机数的最小值)
  49. 最大值.导入数字 (欲取随机数的最大值)
  50. 随机数据 = 取空白字节集 (8)
  51. .计次循环首 (8, 指针)
  52.     随机数据 [指针] = 取随机数 (, )
  53. .计次循环尾 ()
  54. 随机长整数 = 取字节集数据 (随机数据, #长整数型, )
  55. .如果真 (欲取随机数的最小值 = INT_MIN 且 欲取随机数的最大值 = INT_MAX)
  56.     返回 (随机长整数)
  57. .如果真结束
  58. 随机数.导入数字 (随机长整数)
  59. 最小值 = 最小值.加 (常量)
  60. 最大值 = 最大值.加 (常量)
  61. 随机数 = 随机数.加 (常量).求余 (最大值.减 (最小值).加 (常量1)).加 (最小值)
  62. 返回 (随机数.减 (常量).导出长整数 ())

复制代码

相关帖子

您需要登录后才可以回帖 登录 | 注册已关闭

本版积分规则

QQ|手机版|Archiver|从F到0 ( 蒙ICP备17002595号-1 )
蒙公网安备15010402000325号

腾讯云安全认证

GMT+8, 2024-4-25 08:13 , Processed in 1.737099 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表