[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 flashercs 于 2022-5-9 12:11 编辑
  1. @echo off
  2. setlocal EnableDelayedExpansion
  3. cd /d "%~dp0"
  4. set examfile="考试得分.txt"
  5. set trainfile="训练模拟得分.txt"
  6. set recordfile="成绩趋势报告.txt"
  7. set n=0
  8. for /f "usebackq delims=" %%A in (%examfile%) do (
  9.   for %%B in (%%A) do (
  10.     set /a n+=1
  11.     set examscore_!n!=%%B
  12.   )
  13. )
  14. set /a examscoreubound=n
  15. set n=0
  16. for /f "usebackq delims=" %%A in (%trainfile%) do (
  17.   for %%B in (%%A) do (
  18.     set /a n+=1
  19.     set trainscore_!n!=%%B
  20.   )
  21. )
  22. set /a trainscoreubound=n
  23. set prev=0
  24. for /l %%A in (1,1,%examscoreubound%) do (
  25.   @REM echo examscore_%%A=!examscore_%%A!
  26.   set /a subtract=examscore_%%A-prev
  27.   if !subtract! geq 0 (
  28.     set examtrend_%%A=1
  29.   ) else (
  30.     set examtrend_%%A=-1
  31.   )
  32.   set prev=!examscore_%%A!
  33. )
  34. set traintrend_1=1
  35. for /l %%A in (2,1,%trainscoreubound%) do (
  36.   set /a n=%%A-1
  37.   set /a subtract=trainscore_%%A-examscore_!n!
  38.   if !subtract! geq 0 (
  39.     set traintrend_%%A=1
  40.   ) else (
  41.     set traintrend_%%A=-1
  42.   )
  43. )
  44. (
  45. for /l %%A in (1,1,%trainscoreubound%) do (
  46.   if %%A neq %trainscoreubound% (
  47.     <nul set /p "s=!examtrend_%%A!/!traintrend_%%A!,"
  48.   ) else (
  49.     <nul set /p "s=!examtrend_%%A!/!traintrend_%%A!="
  50.   )
  51.   >nul set /a relationresult_%%A=examtrend_%%A/traintrend_%%A
  52. )
  53. set ctr=0
  54. for /l %%A in (1,1,%trainscoreubound%) do (
  55.   <nul set /p "s=!relationresult_%%A!"
  56.   if %%A neq %trainscoreubound% <nul set /p "s=,"
  57.   if !relationresult_%%A! geq 0 set /a ctr+=1
  58. )
  59. set /a ratio=ctr*100/trainscoreubound
  60. echo.
  61. echo 训练提高成绩概率:!ctr!/%trainscoreubound%=!ratio!%%
  62. )>%recordfile%
  63. endlocal
  64. pause
  65. exit /b
复制代码
1

评分人数

    • JK_m: 收小弟么大神技术 + 1
微信:flashercs
QQ:49908356

TOP

改了一下59行,还是用百分比较好.避免100%时出现0.100的情况.
微信:flashercs
QQ:49908356

TOP

回复 9# JK_m


    代码已修改.
微信:flashercs
QQ:49908356

TOP

返回列表