有懂fortran语言的吗,小弟Fortran结课考试了,要编个小程序,家底上..

希望各位大大能帮帮忙,小弟家当都上了题目如下:编写外部函数子程序,计算SINX=X-(X^3)/3!+(X^5)/5!-(X^7)/7!+......的值,直到最后一项的... 希望各位大大能帮帮忙,小弟家当都上了
题目如下:

编写外部函数子程序,计算SIN X=X -(X^3)/3! + (X^5)/5!-(X^7)/7! +......的值,直到最后一项的绝对值小于10^-6为止。再编写主程序,从键盘读入X,调用该外部函数并输出S的计算结果。

FROM:《fortran95程序设计与数据结构基础教程》天津大学出版社,178页习题3
额 我试了 怎么输入数字没反应... 你试了吗 是不是哪里有点问题啊
输入0,2说什么不是内部文件,就输入1有个结果,0.8XXXXX的
求助啊 高手
展开
 我来答
BiCGSTAB
2010-10-30 · TA获得超过878个赞
知道小有建树答主
回答量:238
采纳率:0%
帮助的人:0
展开全部
呵呵,我忘记考虑整型变量范围的问题。程序已改:

program sin_taylor
implicit none

real x,s,sintaylor

read(*,*)x ! 从键盘读入X
s=sintaylor(x) ! 调用外部函数sintaylor
print*,s

pause
end program sin_taylor
!!!!!!!!!!!!!!!!!!!!!!!!!!
real function sintaylor(x)
real eps,term,x
integer i,j

eps=1.e-6
sintaylor=0.
i=1
term=1.
do while (abs(term)>eps) ! 最后一项的绝对值小于10^-6
term=1.
do j=1,i
term=term*x/j
end do
if (mod(i,4)==3) then
term=-term
end if
sintaylor=sintaylor+term
i=i+2
end do
end function sintaylor
sjzwuww
2010-10-30 · TA获得超过1.2万个赞
知道大有可为答主
回答量:6839
采纳率:82%
帮助的人:2107万
展开全部
! 此程序已经通过调试,请放心使用
PROGRAM MAIN
IMPLICIT NONE
REAL :: X,MY_SIN
WRITE(*,*) '请输入 x 的值 :'
READ(*,*) X
WRITE(*,*) 'MY_SIN(X)=', MY_SIN(X)
END PROGRAM
!----------------------------
FUNCTION MY_SIN(X)
REAL :: X,MY_SIN,T,EPS
INTEGER::N
EPS=1.0/10**6
N=1
T=X
MY_SIN=T
DO WHILE(ABS(T)>=EPS)
N=N+2
T=-T*X*X/N/(N-1)
MY_SIN=MY_SIN+T
ENDDO
END FUNCTION MY_SIN
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式