bash は明らかに整数演算以外の処理を実行できないため (またはそれを行うことさえできるのでしょうか?)、スクリプトに対していくつかの数学関数を実行するための回避策を考え出そうとしています。
私が考えているスクリプトは、最終的にシミュレーション プログラムに使用される一連のマクロを記述する必要があります。現在、マクロのパラメータとして使用されるパーティクル ソースの位置を出力しようとしています。
私が書いた C++ プログラムは非常に単純で、i を取り込んで x と y をそのまま出力します。
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
double i;
double theta = 11 * (3.1415926535897932384626/180);
cin >> i;
double b = 24.370;
double y = (b/i)*sin(theta);
double x = (b/i)*cos(theta);
cout << x << " " << y << endl;
return 0;
}
私が書いているスクリプトは、私が作成しようとしているマクロに関係するものを出力しますが、私が立ち往生している行 ( (1) とラベル付けされています) は、このようなことをする必要があります...
for i in {1..100}
do
echo "./a.out" #calling the C program
echo "$i" #entering i as input
x = first output of a.out, y = second output a.out #(1) Confused on how to do this part!
echo -n "/gps/position $x $y 0 27.7 cm" > mymacro.mac
終わり
これを行うには本当に簡単な方法が必要であることは知っていますが、何をすべきか正確にはわかりません。基本的には、ac プログラムの出力をスクリプト内の変数として使用するだけです。