LINUX.ORG.RU

Замена переменной при подсчете факториала

 , ,


0

2

Есть такая проблема echo 'define fac(x) {if (x>1){return x*fac(x-1)};return 1} fac($Natoms)' | bc - данная строчка считает факториал, но к сожалению при замене x на переменную, bash не считает подскажите как быть в данной ситуации?

Двойные кавычки вместо одинарных должны помочь

Deleted
()
Последнее исправление: medossa (всего исправлений: 1)

Ты кавычками заэкранировал строку от интерпретации башем.

anonymous
()

вот переменная $Natoms в одинарных кавычках не отработает. Зачем менять x на переменную не понял, это ж объявление функции.

Deleted
()

а где здесь вообще Bash?

das_tier ★★★★★
()
n=50
bc <<-!
	define ...
	fac($n)
!

printf 'n=%d\n%s\n' 10 'define ... fac(n)' | bc, первое получше

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.