# C program for sine series

Discussion in 'Programmer's Corner' started by circuit2000, Apr 28, 2007.

1. ### circuit2000 Thread Starter Active Member

Joined:
Jul 6, 2006
33
0
1)I am unable to write a C program to find the sum to n terms of a sine series. The concept used to find the sum to n terms of a cosine series is as follows:
First take Sum=1,t=1,i=1
So we have the first term. Now the second term is got by
t=(t*M) (where M= -x*x/(2i-1)*2i)
t= (-t*x*x/(2i-1)*2i
So we get the second term as,
t= (-1)*x*x/1*2 = -x^2/2
The multiplying term M can be got by dividing the (n+1)th term of the series by the nth term of the series. I applied the same method for sine series also and I got M as:
M=t(n+1)/t(n) = -x^2/2n(2n+1) Or, M= -x^2/2i(2i+1)
But using this expression of M, I am unable to generate the sine series.
The nth term of sine series is (-1)^(i+1)*x^(2i-1)/(2i-1)!
But no factorial function is available in C. So what is the way to write this program?

2. ### recca02 Senior Member

Joined:
Apr 2, 2007
1,211
0
i know one thing abt factorials
u will have to define a function factorial by using for loop.
and call this function by the main function at the same time sending the arguments.
i hope u have learned abt functions ,if not try reading from some book
it will certainly have an example of the kind where call to a function is made
the function then returns the value to the main function.

3. ### Papabravo AAC Fanatic!

Joined:
Feb 24, 2006
8,867
1,392
Nonsense! Factorial is the classic case of a recursive function. Two things to watch out for. First is overflow, and second is stack depth.

N.B. Try Ackermann's function for a really wicked example of runaway recursion.

4. ### recca02 Senior Member

Joined:
Apr 2, 2007
1,211
0
well i did mean recursive function,
i just wasnt able to recall the case correctly,
i dont deal with c programming that much.

5. ### circuit2000 Thread Starter Active Member

Joined:
Jul 6, 2006
33
0
Now, I have only one way of solving it. I will have to write the program for cosine series and then adding an extra instruction sinx=sqrt(1- cosx*cosx). Anyway, thanx guys.