2013-04-08 15 views
0


我在做一個批處理程序來解決一些方程,我希望我的最終結果可以給我一個QR碼的二進制文件。無論如何,我剛開始用指數進行計算。 我的問題是,我不知道該怎麼做,在批,因爲我需要用我的指數有一個變量x:
成對的數字或指數

x^2 + x^3 
x^4 + x^5 
x^2 * x^4 + x^3 * x^5 
= x^6 + x^8 

然後,我認爲我也許可以用數字的夫婦,因爲我只需要將一個指數添加到另一個。

(2 , 3) + 
(4 , 5) 
= (6 , 8) 

我搜索了網頁,但沒有找到任何有關它的信息。
這兩種方法都很好,但(從頭開始)我更喜歡夫妻方法。
在此先感謝您提供的任何幫助。
VictorVW

+0

什麼是「批處理程序」?你的意思是「批處理文件」?你想用什麼編程語言? – 2013-04-08 03:21:22

+0

目前尚不清楚您打算如何通過輸入,以及您希望如何返回/格式化結果。 – 2013-04-08 05:45:51

回答

0

在批量算術中沒有指數運算符。然而,這是很容易用乘法做:

::x^2 
set /a x*=x 
::x^3 
set /a x*=x*x 
::x^4 
set /a x*=x*x*x 

我不知道你說「號的情侶」的意思,但如果你解釋,我會盡力幫助。

作爲一個方面說明,你可以使用VBScript來做到這一點。例如,x = x^2將平方x。有關VBScript運算符的更多信息,請參閱here。有關批處理運算符的信息,請參見here

1

對不起。你的問題不清楚;也許如果你向我們解釋什麼是「QR碼的二進制碼」,我們可以以更好的方式幫助你。無論如何,這是我可能的解決方案的版本。

這個程序:

@echo off 
setlocal 
for /F "tokens=1,2 delims=(,) " %%a in (file1.txt) do (
    echo (%%a , %%b^) + 
    set /A a+=%%a, b+=%%b 
) 
echo = (%a% , %b%) 

......與此數據:

(2 , 3) 
(4 , 5) 

......產生這種輸出:

(2 , 3) + 
(4 , 5) + 
= (6 , 8) 

這個程序:

@echo off 
setlocal EnableDelayedExpansion 
rem Do multiplication of all 2-terms equations 
for /F "delims=" %%e in (file2.txt) do (
    echo %%e 
    set "equation=%%e" 
    rem Eliminate "x^ and +" from equation 
    for %%a in (x ^^ +) do set equation=!equation:%%a=! 
    rem Add exponents 
    for /F "tokens=1,2" %%a in ("!equation!") do (
     set /A a+=%%a, b+=%%b 
    ) 
) 
echo = x^^%a% + x^^%b% 
rem Add similar terms 
if %a% equ %b% (
    echo = 2x^^%a% 
) 

......與此數據:

x^2 + x^3 
x^4 + x^5 

......產生這種輸出:

x^2 + x^3 
x^4 + x^5 
= x^6 + x^8 

...,但這樣的數據:

x^2 + x^3 
x^4 + x^3 

...產生此輸出:

x^2 + x^3 
x^4 + x^3 
= x^6 + x^6 
= 2x^6 

我希望它有幫助...

+0

+1,美觀高效 – Endoro 2013-04-08 07:05:42