作者PTT0207445 (我是鄉民)
看板Fortran
標題Re: [問題] 找出兩兩距離
時間Thu Jan 17 07:54:43 2019
(已知27取4=17550)
program main
implicit none
type point
real(
8),
dimension(
3) :: coordinate
end type point
type(point),
dimension(
27) :: label
real(
8),
dimension(
3) :: vector
integer(
4),
dimension(
4,
17550) :: list
integer(
4) :: i27,j27,k27,l27,N,i,j
real(
8),
dimension(
4,
4) :: distance
real :: r
do i27
=1,
27
do i
=1,
3
call random_number(r)
label(i27)%coordinate(i)
=r
enddo
enddo
N
=0
do i27
=1,
27
do j27
=i27
+1,
27
do k27
=j27
+1,
27
do l27
=k27
+1,
27
N
=N
+1
list(:,N)
=(
/i27,j27,k27,l27
/)
enddo
enddo
enddo
enddo
do N
=1,
17550
do i
=1,
4
do j
=1,
4
i27
=list(i,N)
j27
=list(j,N)
vector(:)
=label(i27)%coordinate(:)
-label(j27)%coordinate(:)
distance(i,j)
=dsqrt(
dot_product(vector,vector))
enddo
enddo
enddo
end program main
※ 引述《rosesellshoe (羅斯賣鞋)》之銘言:
: 現在有27個編號,想要任選出4個編號(例如1.2.3.4、1.2.3.5...),
: 每一個編號有各自的座標,請問我要如何寫出一個程式可以幫我
: 求出兩兩之間各自的距離?
: 目前的想法是讀兩個input,一個是1-27之座標檔,
: 另一個為c27取4的所有編號結果,但不知道怎麼讓這兩個檔案有連結...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 86.156.211.166
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Fortran/M.1547682886.A.12F.html
※ 編輯: PTT0207445 (86.156.211.166), 01/17/2019 07:58:39
※ 編輯: PTT0207445 (86.156.211.166), 01/17/2019 08:26:58