±±¾©Ê¯ÓÍ»¯¹¤Ñ§Ôº2026ÄêÑо¿ÉúÕÐÉú½ÓÊÕµ÷¼Á¹«¸æ
²é¿´: 2140  |  »Ø¸´: 1

hznu2007

Ìú³æ (³õÈëÎÄ̳)

[ÇóÖú] FORTRAN³ÌÐòDO WHILE³öÏÖÓï¾ä´íÎó£¬ÇëÄÄλ¸ßÊÖÐÞ¸Äһϣ¨½ô¼±ÇóÖú£© ÒÑÓÐ1È˲ÎÓë

program main
  use IMSL
  implicit none
  external FCN
  
  real, parameter :: ERRREL=0.0001
  integer, parameter :: N=2
  integer, parameter :: ITMAX=100
  real :: XGUESS(N)=(/ 0.5, 0.5 /)
  real X(N) , FNORM

  CALL NEQNF(FCN, ERRREL, N, ITMAX, XGUESS, X, FNORM)
  write(*,*) X
  stop
end

subroutine FCN(XA, F, N)
   implicit none
   integer N
   external FK, FE
   double precision a, b, c, Romberg
   real, target :: XA(N)
   real F(N)
   real, pointer :: x, ita
   x=> XA(1)
   ita=> XA(2)
  
   c=Romberg(a, b, ita, FK)
   F(1)=2*c/3.14159265+0.5/sqrt(1-ita**2)-0.5
   c=Romberg(a, b, ita, FE)
   F(2)=2*c/3.14159265+0.5*sqrt(1-ita**2)-2.5+x*(ita**2)
   
   return
end subroutine

double precision function FE(g,ita)
  double precision g, ita
  FE=( 1-(ita*cos(g))*(ita*cos(g))) **0.5
end


double precision function FK(g,ita)
  double precision g, ita
  FK=( 1-(ita*cos(g))*(ita*cos(g))) **0.5
  FK=1/FK
end

double precision function Romberg(a, b, ita, f)
  double precision a, b, ita, f, eps
  integer m, i, k, point
  parameter(m=30, eps=1e-9)
  double precision t(m), er, h, tt, t2, l

  h=b-a
  k=1
  er=1
  point=1
  t(1)=h/2*(f(a,ita)+f(b,ita))

    do 10 while( (er.gt.eps).and.(k.lt.n))
       tt=t(1)

           t(1)=0
           do 20 i=1,point
           t(1)=t(1)+f(a+i*h-h/2,ita)
           continue
           t(1)=tt/2+t(1)*h/2

           l=1
           do 30 i=2,k
             t2=t(i)
                 l=l*4
                 t(i)=(t(i-1)*l-tt)/(l-1)
                 tt=t2
           continue

           point=point*2
           k=k+1
           h=h/2
           l=l*4
           t(k)=(t(k-1)*1-tt)/(l-1)
           er=abs(t(k)-tt)

         continue
         Romberg=t(k)
   end do
  
end
--------------------Configuration: 201401 - Win32 Debug--------------------
Compiling Fortran...
D:\compaq visual fortran\MSDEV98\MyProjects\hello\01.f90
D:\compaq visual fortran\MSDEV98\MyProjects\hello\01.f90(70) : Error: This DO variable has already been used as an outer DO variable in the same nesting structure.   [I]
    do 30 i=2,k
-----------------^
D:\compaq visual fortran\MSDEV98\MyProjects\hello\01.f90(86) : Error: This ENDDO statement requires a label.   [30]
   end do
^
D:\compaq visual fortran\MSDEV98\MyProjects\hello\01.f90(70) : Error: There is an extra DO construct label.   [30]
    do 30 i=2,k
--------------^
D:\compaq visual fortran\MSDEV98\MyProjects\hello\01.f90(64) : Error: An unterminated block exists.
    do 20 i=1,point
^
D:\compaq visual fortran\MSDEV98\MyProjects\hello\01.f90(60) : Error: An unterminated block exists.
    do 10 while( (er.gt.eps).and.(k.lt.n))
^
D:\compaq visual fortran\MSDEV98\MyProjects\hello\01.f90(60) : Error: This label is undefined.   [10]
    do 10 while( (er.gt.eps).and.(k.lt.n))
-------^
D:\compaq visual fortran\MSDEV98\MyProjects\hello\01.f90(64) : Error: This label is undefined.   [20]
    do 20 i=1,point
--------------^
Error executing df.exe.

01.obj - 7 error(s), 0 warning(s)
»Ø¸´´ËÂ¥

» ²ÂÄãϲ»¶

» ±¾Ö÷ÌâÏà¹Ø¼ÛÖµÌùÍÆ¼ö£¬¶ÔÄúͬÑùÓаïÖú:

ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû

jpchou

ר¼Ò¹ËÎÊ (ÖøÃûдÊÖ)

¡¾´ð°¸¡¿Ó¦Öú»ØÌû

¡ï
¸Ðл²ÎÓ룬ӦÖúÖ¸Êý +1
jjdg: ½ð±Ò+1, ¸Ðл²ÎÓë 2014-01-14 01:49:13
D:\compaq visual fortran\MSDEV98\MyProjects\hello\01.f90(70) : Error: This DO variable has already been used as an outer DO variable in the same nesting structure.   [I]
    do 30 i=2,k
-----------------^
D:\compaq visual fortran\MSDEV98\MyProjects\hello\01.f90(86) : Error: This ENDDO statement requires a label.   [30]
   end do
^

Äã do 30 i=2,k ½oÁË‚€ label "30"
¿ÉÊÇ end do ÍüÁ˽o
°Ñ end do ¸Ä³É 30 end do
¾Í¿ÉÒÔ
ÆäËûµØ·½Ò²Òª×öͬ˜ÓµÄÐÞ¸Ä
2Â¥2014-01-13 20:23:47
ÒÑÔÄ   »Ø¸´´ËÂ¥   ¹Ø×¢TA ¸øTA·¢ÏûÏ¢ ËÍTAºì»¨ TAµÄ»ØÌû
Ïà¹Ø°æ¿éÌø×ª ÎÒÒª¶©ÔÄÂ¥Ö÷ hznu2007 µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] 284Çóµ÷¼Á +4 èó@@ 2026-04-06 4/200 2026-04-06 17:19 by dongzh2009
[¿¼ÑÐ] 281Çóµ÷¼Á +8 Ò¬×ÓÄ¢¹½ 2026-04-06 8/400 2026-04-06 10:38 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 320·ÖÈ˹¤ÖÇÄܵ÷¼Á +8 Õñ¡ªTZ 2026-04-03 8/400 2026-04-05 22:33 by ·¶Ê½Ë¼Î¬
[¿¼ÑÐ] 272·ÖÇóµ÷¼Á +4 wangyile2233 2026-04-02 4/200 2026-04-05 22:21 by 286640313
[¿¼ÑÐ] 308Çóµ÷¼Á +3 ÖÕ²»ËÆ´Óǰ 2026-04-05 3/150 2026-04-05 20:07 by à£à£à£0119
[¿¼ÑÐ] 295Çóµ÷¼Á +8 FZAC123 2026-04-03 8/400 2026-04-05 17:46 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 306·Ö²ÄÁÏÓ뻯¹¤Çóµ÷¼Á +7 Àè°ÉÀ²À²ÄãºÜÓÐà 2026-04-03 7/350 2026-04-05 17:18 by Hdyxbekcb
[¿¼ÑÐ] Ò»Ö¾Ô¸µç×ӿƼ¼´óѧ085600²ÄÁÏÓ뻯¹¤ 329·ÖÇóµ÷¼Á +10 Naiko 2026-04-04 10/500 2026-04-05 09:40 by sam3303
[¿¼ÑÐ] ÇóÉúÎïѧѧ˶µ÷¼Á¡ª¡ª364·Ö +7 ÔÆ¶äåÞÍäÖ¸ÄÏ 2026-04-04 7/350 2026-04-04 22:49 by zhyzzh
[¿¼ÑÐ] 323Çóµ÷¼Á +8 Àî¼ÑÀÖ1 2026-04-04 8/400 2026-04-04 22:26 by hemengdong
[¿¼ÑÐ] ²ÄÁÏÓ뻯¹¤306·ÖÕÒµ÷¼Á +23 ²×º£ÇáÖÛe 2026-04-02 27/1350 2026-04-04 21:52 by laoshidan
[¿¼ÑÐ] ²ÄÁϵ÷¼Á +12 Ò»ÑùYWY 2026-04-02 13/650 2026-04-04 20:49 by À¶ÔÆË¼Óê
[¿¼ÑÐ] 321Çóµ÷¼Á +6 ÈÏÕæÇóÉÏѧ 2026-04-03 6/300 2026-04-04 19:51 by dongzh2009
[¿¼ÑÐ] ²ÄÁÏ383Çóµ÷¼Á +5 ¹ùÑôÑôÑô³É 2026-04-04 5/250 2026-04-04 19:06 by dongzh2009
[¿¼ÑÐ] 11408 Ò»Ö¾Ô¸Î÷µç£¬277·ÖÇóµ÷¼Á +4 zhouzhen654 2026-04-03 4/200 2026-04-04 18:10 by Öí»á·É
[¿¼ÑÐ] »¯¹¤µ÷¼Á303·Ö£¬¹ýËļ¶ +28 ÆÜÎà´ý·ç 2026-04-02 28/1400 2026-04-03 21:40 by qlm5820
[¿¼ÑÐ] 335Çóµ÷¼Á +7 ÉòÇåÁ§ 2026-04-03 7/350 2026-04-03 18:55 by lijunpoly
[¿¼ÑÐ] Ò»Ö¾Ô¸´ó¹¤Ñ§Ë¶£¬Çóµ÷¼Á +4 yub0811 2026-04-02 4/200 2026-04-02 21:36 by °ÙÁéͯ888
[¿¼ÑÐ] ³õÊÔ301£¬´úÂë085701»·¾³¹¤³Ì£¬±¾Ë¶Ò»Ö£¬ËÄÁù¼¶Òѹý£¬ÓжþÇøÒ»×÷£¬¹²·¢±í5ƪÂÛÎÄ +6 axibli 2026-04-01 6/300 2026-04-02 13:42 by Ecowxq666£¡
[¿¼ÑÐ] 0855»úе³õÊÔ280Çóµ÷¼Á +3 kazenotori 2026-03-31 3/150 2026-04-01 10:08 by JourneyLucky
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û