作者zx09192939 (虚拟外功)
看板Fortran
标题[请益] 先做再判断的while
时间Mon Feb 24 11:00:21 2014
我翻过书的回圈章节
因为回圈次数不一定所以一定要用while,而我试着改掉goto的语法所以不考虑
请问除了先判断再进回圈的方式之外
fortran有没有类似C那种判断在後,也就是至少先做一次的语法呢?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 163.22.18.23
1F:推 terryys:可以试试用exit? 02/24 11:15
2F:推 rex0707:WHILE(.TRUE.) 搭配 IF(判断) EXIT 02/24 11:48
3F:→ zx09192939:我本来就是这样写但是觉得不漂亮(讨打 02/25 01:07
4F:→ zx09192939:看来是没有内建的能用罗 02/25 01:07
5F:→ blc:flag=.true. ; while(flag) ; if()flag=.false. 02/25 14:44
6F:→ zx09192939:谢楼上,但还是会先进判断而非我。我采用了各位的方法 02/27 16:40
网路上找到了一个语法
直接贴范例给大家看
N = 1
DO
N = N + 1
TERM = TERM * (-1.)*X*X/REAL((2*N-2)*(2*N-1))
SINX =SINX + TERM
IF(ABS(TERM) .LT. 1.E-7) EXIT
END DO
只要DO後面不要放变数跟设定范围就会一直做,直到满足判断式才exit离开回圈
※ 编辑: zx09192939 来自: 163.22.18.23 (03/10 17:07)