请选择 进入手机版 | 继续访问电脑版
天气与日历 切换到窄版

 找回密码
 立即注册
中国膜结构网
十大进口膜材评选 十大国产膜材评选 十大膜结构设计评选 十大膜结构公司评选
查看: 25|回复: 1

[源码] 借助数据库产生随机数

[复制链接]
  • TA的每日心情
    开心
    11 小时前
  • 签到天数: 25 天

    [LV.4]偶尔看看III

    72

    主题

    64

    回帖

    746

    积分

    管理员

    积分
    746
    发表于 2024-3-19 20:48:04 | 显示全部楼层 |阅读模式
    1. (defun $round$ (n-min n-max ws / rnds sjs sql strs sjs)
    2. ;n-min 最小值
    3. ;n-max 最大值
    4. ;ws 小数位数
    5.   (setq n-min (vl-catch-all-apply 'vl-princ-to-string (list n-min)))
    6.   (setq n-max (vl-catch-all-apply 'vl-princ-to-string (list n-max)))
    7.   (setq ws (vl-catch-all-apply 'vl-princ-to-string (list ws)))
    8.   (if (vl-catch-all-error-p n-min)
    9.     (setq n-min nil)
    10.   )
    11.   (if (vl-catch-all-error-p n-max)
    12.     (setq n-max nil)
    13.   )
    14.   (if (vl-catch-all-error-p ws)
    15.     (setq ws "1")
    16.   )
    17.   (if (and n-min n-max (> n-max n-min))
    18.     (progn
    19.       (setq rnds (mapcar (function
    20.          (lambda (a)
    21.            (strcat
    22.              (strcat "ROUND("
    23.                n-min
    24.                " + RAND() * ("
    25.                n-max
    26.                " - "
    27.                n-min
    28.                "), "ws") AS rand"
    29.                (itoa a)
    30.              )
    31.            )
    32.          )
    33.        )
    34.        (list 1 2 3 4 5)
    35.      )
    36.       )
    37.       (setq strs (mapcar (function (lambda (a) (strcat a ",")))
    38.        (reverse (cdr (reverse rnds)))
    39.      )
    40.       )
    41.       (setq strs (append strs (list (last rnds))))
    42.       (setq sql
    43.        (apply 'strcat strs)
    44.       )
    45.       (setq sql (strcat "select " sql))
    46.       (setq sjs
    47.        (car
    48.          ($http-server$
    49.      (list
    50.        (cons "IP" (getenv "数据库地址"))
    51.        (cons "端口" ($locport$))
    52.        (cons "接口" ($fu-wu-qi-jie-kou$ "查询表"))
    53.           ;(cons "数据库路径" "C:\\ZXCAD.DB")
    54.        (cons
    55.          "报文头"
    56.          (list (cons "Client-Auth" (getenv "ComputerName")))
    57.        )
    58.        (cons "Sql" SQL)
    59.        (cons "http方法" "POST")
    60.        (cons "返回格式" "db")
    61.      )
    62.          )
    63.        )
    64.       )
    65.       (setq sjs(mapcar 'cdr sjs))
    66.     )
    67.   )
    68.   sjs
    69. )
    复制代码

     

     

     

     

    [源码] 借助数据库产生随机数
    哎...膜结构车棚,签到来了1...
  • TA的每日心情
    开心
    11 小时前
  • 签到天数: 25 天

    [LV.4]偶尔看看III

    72

    主题

    64

    回帖

    746

    积分

    管理员

    积分
    746
     楼主| 发表于 2024-3-19 20:49:03 | 显示全部楼层
    1. (defun random-in-range (min max)
    2.     (setq random-value (+ min (* (random (- max min + 1)) 1)))
    3.     ; 若需要整数随机数,则可以使用round或fix函数
    4.     (setq random-int-value (fix random-value))
    5.     random-value ; 返回浮点数随机数
    6.     ; 或者
    7.     ; random-int-value ; 返回整数随机数
    8. )

    9. (princ (random-in-range 1 100)) ; 生成1到100之间的随机数
    复制代码

     

     

     

     

    [源码] 借助数据库产生随机数
    哎...膜结构车棚,签到来了1...
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|中国膜结构网_中国空间膜结构协会

    GMT+8, 2024-3-29 20:02 , Processed in 0.058457 second(s), 21 queries .

    Powered by Discuz! X3.5

    © 2001-2024 Discuz! Team.

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