成对的数字或指数

Posted

技术标签:

【中文标题】成对的数字或指数【英文标题】:Batch pairs of numbers or exponents 【发布时间】:2013-04-08 03:18:51 【问题描述】:

我正在制作一个批处理程序来解决一些方程,我希望我的最终结果可以给我二维码的二进制文件。无论如何,我刚开始用指数进行计算。 我的问题是我不知道如何批量执行该操作,因为我需要将指数与变量 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)

我搜索了网络,但没有找到任何关于它的信息。 在这两种方法上获得帮助会很好,但(从头开始)我更喜欢夫妻方法。

【问题讨论】:

什么是“批处理程序”?你的意思是“批处理文件”?您尝试使用哪种编程语言? 不清楚您打算如何传递输入,也不清楚您希望如何返回/格式化结果。 【参考方案1】:

对不起。你的问题不清楚;也许如果您向我们解释什么是“二维码二进制”,我们可能会以更好的方式帮助您。无论如何,这是我的一个可能的解决方案。

这个程序:

@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

希望对你有帮助……

【讨论】:

【参考方案2】:

批量算术中没有指数运算符。但是,使用乘法很容易做到:

::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。

【讨论】:

以上是关于成对的数字或指数的主要内容,如果未能解决你的问题,请参考以下文章

找到成对的数字

成对的友好数字

股票常识中啥是德国DAX指数

找出数组中不是成对出现的数字

数字信号处理基本序列 ( 复指数序列 | 单位复指数序列 | 复变函数欧拉公式 )

c 改变双精度数的指数