03-29-2007
HI,
I have made a small change in your code and it is working fine for me...try it...
factorial()
{
if [ $1 -gt 1 ]
then
y=`expr $1 - 1`
factorial $y
#x=$(( $1 \* factorial $y )) -- I have commented this
x=$(( $1 * $? ))
return $x
else
return 1
fi
}
echo -n "Enter number = "; read n
factorial $n
echo $?
Thanks
Raghuram
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
I'm using the UNIX csh and i wish to use recursion to nav my way up (or down as it is) a given folder.
My little test script is called "r" and takes a folder as argv (or $1)
#!/bin/tcsh -f
set allFiles = `ls -A $argv`
cd $argv
while ($#allFiles)
if (-d... (1 Reply)
Discussion started by: gsjf
1 Replies
2. Shell Programming and Scripting
I am running a korn shell script which has a recursive function.
The script ran for 117 iterations and ended up with the following error
"recursion too deep".
what should be done to avert this?
Thanks in advance
Swamy
p.s. I am on UNIX MPRAS V4 (3 Replies)
Discussion started by: swamy455
3 Replies
3. Programming
I want to halt a tail recursive function after certain validation. I want to come out of entire recursion without unwinding phase. How can i achieve that . The coding is done in C language. (5 Replies)
Discussion started by: joshighanshyam
5 Replies
4. Shell Programming and Scripting
Hi Guys,,
I tried to create a recursive function in unix.
The following is the code.
#/bin/sh
function(){
n=$1;
if ; then
out=1;
echo "inside if for 0";
else
out = `$n * function "$n-1"`;
echo "inside if for $n-1;
fi (3 Replies)
Discussion started by: mac4rfree
3 Replies
5. Programming
Hi,
Question: how come the output is like that? Can explain to me abit. I am learning C.
Thanks!
#include <stdio.h>
#include <string.h>
void printit(char line_of_char, int index);
int main()
{
char line_of_char;
int index = -1;
strcpy(line_of_char, "This is a string.");
... (5 Replies)
Discussion started by: seede
5 Replies
6. Shell Programming and Scripting
Can someone please explain me why the following script calls it self recursively:
#!/bin/bash
echo Called
$0
while this not:
#!/bin/bash
echo Called
$($0)
Thanks (6 Replies)
Discussion started by: superpointer
6 Replies
7. UNIX for Advanced & Expert Users
In the following command:
find / -ctime +3 -exec rm -R {}\;
how is the recursion list built for the actual rm ?
F'rinstance; I had a case where a user typed this as root using '/' instead of '.' so everything in the root level was going to be traversed. They hit <ctrl>C before too much was... (5 Replies)
Discussion started by: port43
5 Replies
8. Shell Programming and Scripting
Not sure how to ask this question. I want concatenate strings and variable recursively into new variable. For example:
infile01=/dir/subfolder/file01.txt
infile02=/dir/subfolder/file02.txt
infile03=/dir/subfolder/file03.txt
for i in {01..03}
do
u=${"infile"$i}
echo $u
doneI got error... (7 Replies)
Discussion started by: yifangt
7 Replies
9. Solaris
Hi,
I am trying to disable the recursion on DNS server (Solaris 10). I have added the lines in the named.conf as below:
allow-query-cache { none; };
recursion no;
Then restarted the solaris DNS services
svcadm refresh svc:/network/dns/server:default
Still I am able to... (0 Replies)
Discussion started by: snchaudhari2
0 Replies
10. UNIX for Beginners Questions & Answers
Hi,
I cannot find a way to copy a directory to another location with all attributes (mode, ownership, timestamps) but withOUT recursion (after so many years of working with Linux).
Say I want to create /home/jail/tmp exactly like /tmp but with nothing in it. Here is what I tried:
... (7 Replies)
Discussion started by: chebarbudo
7 Replies
LEARN ABOUT SUSE
combinatorics
math::combinatorics(n) Tcl Math Library math::combinatorics(n)
__________________________________________________________________________________________________________________________________________________
NAME
math::combinatorics - Combinatorial functions in the Tcl Math Library
SYNOPSIS
package require Tcl 8.2
package require math ?1.2.3?
::math::ln_Gamma z
::math::factorial x
::math::choose n k
::math::Beta z w
_________________________________________________________________
DESCRIPTION
The math package contains implementations of several functions useful in combinatorial problems.
COMMANDS
::math::ln_Gamma z
Returns the natural logarithm of the Gamma function for the argument z.
The Gamma function is defined as the improper integral from zero to positive infinity of
t**(x-1)*exp(-t) dt
The approximation used in the Tcl Math Library is from Lanczos, ISIAM J. Numerical Analysis, series B, volume 1, p. 86. For "x >
1", the absolute error of the result is claimed to be smaller than 5.5*10**-10 -- that is, the resulting value of Gamma when
exp( ln_Gamma( x) )
is computed is expected to be precise to better than nine significant figures.
::math::factorial x
Returns the factorial of the argument x.
For integer x, 0 <= x <= 12, an exact integer result is returned.
For integer x, 13 <= x <= 21, an exact floating-point result is returned on machines with IEEE floating point.
For integer x, 22 <= x <= 170, the result is exact to 1 ULP.
For real x, x >= 0, the result is approximated by computing Gamma(x+1) using the ::math::ln_Gamma function, and the result is
expected to be precise to better than nine significant figures.
It is an error to present x <= -1 or x > 170, or a value of x that is not numeric.
::math::choose n k
Returns the binomial coefficient C(n, k)
C(n,k) = n! / k! (n-k)!
If both parameters are integers and the result fits in 32 bits, the result is rounded to an integer.
Integer results are exact up to at least n = 34. Floating point results are precise to better than nine significant figures.
::math::Beta z w
Returns the Beta function of the parameters z and w.
Beta(z,w) = Beta(w,z) = Gamma(z) * Gamma(w) / Gamma(z+w)
Results are returned as a floating point number precise to better than nine significant digits provided that w and z are both at
least 1.
BUGS, IDEAS, FEEDBACK
This document, and the package it describes, will undoubtedly contain bugs and other problems. Please report such in the category math of
the Tcllib SF Trackers [http://sourceforge.net/tracker/?group_id=12883]. Please also report any ideas for enhancements you may have for
either package and/or documentation.
math 1.2.3 math::combinatorics(n)