Guest User

Untitled

a guest
Apr 18th, 2012
33
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. program sinus
  2.  
  3. ! define variables
  4. implicit none
  5. double precision :: f, fac, pi, r
  6. integer :: m, n, i
  7. pi = acos(-1.0)
  8.  
  9. !initialize sin(0)=0
  10. f=0
  11.  
  12. ! initialize inner loop count i
  13. i=1
  14.  
  15. fac=1
  16. ! calculate (m=1,2,...,10)
  17.   DO m=0,10
  18.  
  19. ! initialize 0!=1
  20.  
  21.  
  22.       DO n=i,2*m+1
  23.  
  24.          fac=fac*DBLE(n)
  25.            i=i+1
  26.            print*, fac
  27.       END DO
  28.     f=f +((-1)**(m)) * (pi/4)**(2*m+1) / fac
  29.  
  30.     print*, 'm =',m,'      ',f
  31.  
  32.   END DO
  33.  
  34. !real value of sinus at pi/4
  35.   r = sin(pi/4)
  36.  print*, 'Der echte Wert der Sinusfunktion an der Stelle x=pi/4:'
  37.  print*,'            ', r
  38.  
  39. !compare end f with real value of sinus at pi/4
  40.  print*, 'Der Unterschied zwischem dem echten Wert und dem errechneten Wert:'
  41.  print*, '            ',(r-f)
  42.  
  43.   print*, 'Funfact: Meine innere Schleife wurde', i-1, 'mal durchlaufen.'
  44.   end program
Advertisement
Add Comment
Please, Sign In to add comment