[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[其他] 批处理怎样计算列相加的结果?

比如1.txt文本内容:
1  2  3  4  5
6  7  8  9  10
11 12 13 14 15
16 17 18 19 20
21 22 23 24 25
26 27 28 29 30
想输出
第一列第1个和第3个相加
第一列第2个和第4个相加
第一列第3个和第5个相加
第一列第4个和第6个相加
到2.txt:如
12
22
32
42
要怎么写,请教一下朋友们,谢谢了
列数很长,不只计算4组数,
本人只想到是将第1列输出2列,在用行相加,就是不想多出来的后2行不运算
1    11
6     16
11   21
16   26
21
26
要是用行来相加,不想计算多出的后面2行
谢谢各位帮小弟一个忙

[ 本帖最后由 wbisiviv 于 2011-1-4 20:46 编辑 ]

文本总行数必须是双数,否则会丢失最后几行。
第二个问题的“在用行相加“是什么意思?
:
  1. @echo off&setlocal enabledelayedexpansion
  2. for /f %%i in (a.txt) do (
  3.    set /a n+=1
  4.    set d=!d! %%i
  5.    if !n! equ 4 (
  6.       for /f "tokens=1-4" %%a in ("!d!") do (
  7.          set /a x=%%a+%%c,s=%%b+%%d,n=2
  8.          echo %%a+%%c=!x!
  9.          echo %%b+%%d=!s!
  10.          set d=%%c %%d
  11.       )
  12.    )
  13. )
  14. pause
复制代码
技术问题请到论坛发帖求助!

TOP

如果文本总行数是奇数,楼主希望如何处理?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

还是不行

要是列数很长,不是4行,把4变成N,怎么写,得出的结果并输出到2.txt里

TOP

回复 4楼 的帖子

还是不行?
你测试过吗?
技术问题请到论坛发帖求助!

TOP

返回列表