Пакетные пары чисел или показателей


Я делаю пакетную программу для решения некоторых уравнений, я надеюсь, что мой конечный результат может дать мне двоичный код для 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

2 ответа

Извините меня. Ваш вопрос не ясен; возможно, если вы объясните нам, что такое "двоичный код для 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

Я надеюсь, что это помогает...

В пакетной арифметике нет оператора для показателей. Тем не менее, это легко сделать с помощью умножения:

::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 см. Здесь. Информацию о пакетных операторах смотрите здесь.

Другие вопросы по тегам