2016-11-29 40 views
0

根據gfortran文檔,INT(x)FLOOR(x)都採用輸入x並將x轉換爲整數類型。 FLOOR顯然只允許輸入REAL類型,而INT則輸入INTEGER,REAL和complex類型的輸入。INT與Fortran中的FLOOR

允許的輸入類型是INTFLOOR之間的唯一區別嗎?如果是這樣,任何人都可以解釋爲什麼FLOOR存在,因爲它顯然是多餘的?

「類似問題」框顯示了類似的堆棧溢出問題在CC++,並Python3,但顯然沒有人問然而,這個問題對於Fortran語言,這使我得到這個深入問它。

在我的快速搜索中包括Fortran GoogleStack Overflow意味着什麼也沒有用。所以這是一個重複的過程(除非Fortran有INTFLOOR將它與C/C++/Python區分開來),但我認爲它可以使結果更容易/快速搜索。

回答

1

INT的定義是這樣的:對於REAL輸入它向零變爲零,而FLOOR總是向下舍入。因此,對於負面投入,結果不同。

與您引用的其他語言不同,Fortran中調用FLOOR的結果是INTEGER類型。

考慮FLOOR在其堂兄弟NINTCEILING的背景下。

+0

而且還可以NINT選擇... – Holmz