我想找到一個與MATLAB中的dec2bin(d,n)
類似的函數,它爲Fortran生成一個至少包含n
位的二進制表示。在線我發現this code,它將十進制轉換爲二進制,但沒有機制來決定位數,並要求用戶決定其是一個正整數還是一個正實數...Fortran中是否有等價的MATLAB dec2bin函數?
-2
A
回答
4
這是一個解決方案基於B
編輯運營商(根據高性能商標的評論),這需要一個相當新的編譯器。
!> Returns a binary representation of d as a string with at least n bits.
!> abs(d) < 2^52
function dec2bin(d, n)
implicit none
integer,intent(in) :: d
integer,intent(in),optional :: n
character(len=:),allocatable :: dec2bin
character(len=53) :: tmp
integer :: n_
character(len=8) :: f
if (present(n)) then
n_ = min(n, 53)
write(f,'(i2)') n_
f = '(B' // trim(adjustl(f)) // '.' // trim(adjustl(f)) // ')'
else
f = '(B53)'
endif
write(tmp,f) d
dec2bin = trim(adjustl(tmp))
end function
請注意,此功能不檢查符號(因爲符號被正確處理)。如果你想限制這個正整數,你需要在函數外部完成。
僅僅因爲我必須自己查找正確的語法,以下是Fortran 2008 Standard,Cl的相關章節。 10.7.2.4 「B,O,和Z編輯」:
1生物武器,BW .M,嗷,嗷.M,即要被編輯的字段佔用瓦特度Zw,和ZW .M編輯描述符表示 職位,除非w爲零。當w爲零時,處理器選擇字段寬度。在輸入時,w不應爲 零。相應的輸入/輸出列表項應該是整型,實型或復型。
[...]
6爲了Bw的.m,嗷.M,和ZW .M編輯描述符中的輸出域是相同的體重,嗷,和ZW編輯描述,不同之處在於數字串或十六進制數字串至少包含m位數字。如有必要,包含足夠的前導零以實現最小的m位。 m的值不得超過w的值 ,除非w爲零。 [...]
相關問題
- 1. fortran中的Btest函數,python中是否有任何等價物?
- 2. 使用DEC2BIN()函數在MATLAB
- 3. 在MATLAB中是否有等價的Python範圍函數?
- 4. Fortran等價於numpy.where()函數?
- 5. 檢查是否有任何數組在MATLAB中是等價的
- 6. 是否有GetProperty或等價函數?
- 7. Fortran中的「等價」
- 8. 在Matlab中是否有等價於R的負指數?
- 9. Matlab imfilter在Python中的等價函數
- 10. 在mathematica中matlab subs()的等價函數
- 11. OpenCV中的Matlab Bwareaopen等價函數
- 12. 等價於R中的MatLab「bar」函數?
- 13. 在Matlab中是否有等價的二維「映射」?
- 14. fortran中的等價語句
- 15. 是否有Fortran等價於Python的for-else語句?
- 16. 在熊貓中,函數「all」中是否有等價的python?
- 17. Python的等價物的MATLAB psf2otf函數
- 18. jQuery中是否有與PHP的array_column()等價的函數?
- 19. 是否有與Stata中Excel的COUNTIFS函數等價的功能?
- 20. 在PHP的explode()函數的C++中是否有等價物?
- 21. Maple等價於Matlab的輸入函數
- 22. 在MSMQ中是否有像JMS Topic這樣的等價函數?
- 23. C++中是否有等價的readline()。split()python函數?
- 24. 什麼是C++中的matlab smooth3函數的等價物?
- 25. #define是否等價於一個函數?
- 26. 在jQuery中是否有等價的eval()?
- 27. MATLAB中有稀疏的任何C++/C等價函數
- 28. python中是否有任何strncpy()等價函數?
- 29. NSObject類中是否有任何viewWillAppear等價函數?
- 30. Matlab等價函數使用mathdotnet
非常感謝 – Sha