主题:求助怎么把这个程序的坐标编号连续
这个程序怎么能让坐标标号连续
program ji
PARAMETER (NPP=2100000,MEE=2100000)
real x(1000),y(1000)
integer linenum(10),i,n
open(1,file='line.txt',status='old')
open(2,file='g4.dat')
read(1,*) n !
read(1,*) lnum
do 10 i=1,lnum
read(1,*)linenum(i),x(i),y(i)
10 continue
call disline (n,x(1),y(1),x(2),y(2))
call disline (n,x(2),y(2),x(3),y(3))
write (*,*)
stop
end
subroutine disline(n,x0,y0,xn,yn)
real x(100),y(100)
long=sqrt((x0-xn)*(x0-xn)+(y0-yn)*(y0-yn))!线段长度
num=int(long/n) !节点数
unitlo=long/num !等分线段
dx=unitlo*(xn-x0)/long
dy=unitlo*(yn-y0)/long
l=0
do 10 j=1,num+1
l=l+1
x(l)=x0+dx*(j-1)
y(l)=y0+dy*(j-1)
10 continue
nod=l
do 81 i=1,nod
write(2,109) i,x(i),y(i)
81 continue
109 format(i8,2E15.6)
end
program ji
PARAMETER (NPP=2100000,MEE=2100000)
real x(1000),y(1000)
integer linenum(10),i,n
open(1,file='line.txt',status='old')
open(2,file='g4.dat')
read(1,*) n !
read(1,*) lnum
do 10 i=1,lnum
read(1,*)linenum(i),x(i),y(i)
10 continue
call disline (n,x(1),y(1),x(2),y(2))
call disline (n,x(2),y(2),x(3),y(3))
write (*,*)
stop
end
subroutine disline(n,x0,y0,xn,yn)
real x(100),y(100)
long=sqrt((x0-xn)*(x0-xn)+(y0-yn)*(y0-yn))!线段长度
num=int(long/n) !节点数
unitlo=long/num !等分线段
dx=unitlo*(xn-x0)/long
dy=unitlo*(yn-y0)/long
l=0
do 10 j=1,num+1
l=l+1
x(l)=x0+dx*(j-1)
y(l)=y0+dy*(j-1)
10 continue
nod=l
do 81 i=1,nod
write(2,109) i,x(i),y(i)
81 continue
109 format(i8,2E15.6)
end