本帖最后由 happy886rr 于 2016-9-28 22:41 编辑
回复 1# meiszp
纯批模拟科学计数法- @echo off
- SETLOCAL ENABLEDELAYEDEXPANSION
- (for /f "tokens=1,2,*" %%a in ('type test.txt') do (
- for /f "tokens=1,2 delims=e" %%A in ("%%a") do (
- set "str=%%B"
- if "!str:~0,1!"=="-" (
- set/a "str=1!str:~1!+1"&set "str=-!str:~-3!"
- ) else (
- if "!str!"=="+000" (
- set "str=-001"
- ) else (
- set/a "str=1!str:~!-1"&set "str=+!str:~-3!"
- )
- )
- set "lie1= %%Ae!str!"
- )
- for /f "tokens=1,2 delims=e" %%A in ("%%b") do (
- set "str=%%B"&set "ptr=%%A"&set "ptr=!ptr:.=!"
- if !ptr! geq 200000000 (set/a ptr/=2) else (set/a ptr=!ptr!0/2)
- if !ptr! geq 500000000 (set Mark=1) else (set Mark=0)
- if "!str:~0,1!"=="-" (
- set/a "str=1!str:~!+1+Mark"&set "str=-!str:~1!"
- ) else (
- if "!str!"=="+000" (
- if !Mark! equ 1 (set "str=-001") else (set "str=-002")
- ) else (
- set/a "str=1!str:~1!-1-Mark"&set "str=+!str:~1!"
- )
- )
- set "lie2= !ptr:~0,1!.!ptr:~1!e!str!"
- )
- echo !lie1:~-16! !lie2:~-16! %%c
- ))>new.txt
- start new.txt
- set/p=修改完毕!
复制代码
|