首页 > 编程 > BAT > 正文

批处理bat递归计算N!的实现代码

2020-07-26 20:11:17
字体:
来源:转载
供稿:网友

核心代码:

@echo off:: 代码来自网友:liangbchsetlocal enabledelayedexpansionecho To calculate n^^!set/p nn=n=?set/a "buff_1=1,rad=10000,len=1" for /l %%i in (1,1,%nn% ) do (    set/a cc=0    for /l %%j in (1,1,!len!) do (      set/a "tt=buff_%%j* %%i+!cc!"      set/a "buff_%%j=!tt! %% !rad!,cc=!tt!/!rad!"    )    if !cc! gtr 0 (      set/a len+=1      set/a buff_!len!=!cc!    ) )set/p xx=n^^!=<nulset/a tt=buff_%len%set/p xx=!tt!<nulset/a len-=1for /l %%i in (%len%,-1,1 ) do (  set/a tt=buff_%%i  if !tt! lss 1000 set tt=00000!tt!  set/p xx=!tt:~-4!<nul)echo.pause

双击输入数字即可。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表