Рецепти для bash-а. Може кому знадобиться, от як мені…
function sin(){ echo "scale=10; s($1*a(1)/45);" | bc -l; }
function cos(){ echo "scale=10; c($1*a(1)/45);" | bc -l; }
function tan(){ echo "scale=10; arg=$1*a(1)/45; s(arg)/c(arg);" | bc -l; }
function ln(){ echo "scale=10; l($1);" | bc -l; }
function log(){ echo "scale=10; l($1)/l(10);" | bc -l; }
Правда народ ще більше страждає… ряди розписує:
function sin()
{
if [ $# != 2 ]
then
echo "FAIL" >&2
return 2
fi
result=$1
x=$1
n=1
fact=1
for k in `seq 2 $2`
do
x=$(( $x * $1 * $1 ))
n=$(( $n + 2 ))
fact=$(( (-1.0) * $fact * ($n - 1) * $n ))
result=$(( $result + $x / $fact ))
done
echo $result
}
Немає коментарів:
Дописати коментар