[問題] fortran90 將整數轉成double precision

看板Fortran作者 (shark)時間15年前 (2009/03/03 23:54), 編輯推噓5(504)
留言9則, 5人參與, 最新討論串1/1
想把一個整數轉成double precision 例如有一個整數integer::k k=9 轉成single precision的話,就會用 real(k) 就可以了 可是想轉成double precision的話 我就不知道怎麼辦了 我查過了書 可是試了,都不work integer, parameter:: Prec14 = selected_real_kind(14) 因為我想double有14位 然後real(k, kind=Prec14) 可是還是失敗了 有大大知道甚麼方法嗎 我用的compiler是ifort 謝謝!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.133.158.92

03/04 00:17, , 1F
DBLE(k)
03/04 00:17, 1F

03/04 01:13, , 2F
real(k,8)
03/04 01:13, 2F

03/04 01:14, , 3F
剛沒看到14位@@ 這數字有點怪= = 那就是real(k,14)
03/04 01:14, 3F

03/04 01:16, , 4F
好像沒有14bytes的這種東西 不過Real(k,8)是確定可以的
03/04 01:16, 4F

03/04 01:51, , 5F
dfloat(k)
03/04 01:51, 5F

03/04 10:27, , 6F
real(k,14)的14書上講是14 digits,我也覺得奇怪為甚麼
03/04 10:27, 6F

03/04 10:28, , 7F
用digits來當計算
03/04 10:28, 7F

03/04 10:35, , 8F
可以work了,謝謝
03/04 10:35, 8F

03/04 15:03, , 9F
推一樓,我也是用 dble(k)
03/04 15:03, 9F
文章代碼(AID): #19hLArhu (Fortran)
文章代碼(AID): #19hLArhu (Fortran)