阿摩線上測驗 登入

申論題資訊

試卷:99年 - 099年警察人員及99年交通事業鐵路人員員級_資訊處理#34123
科目:程式設計
年份:99年
排序:0

題組內容

一、輸入一個實數值(變數 x),撰寫程式(任何程式語言均可)來轉換 x 為:

申論題內容

⑴無條 件捨去之整數(變數 m, m = ⎣x⎦);及

詳解 (共 1 筆)

詳解 提供者:hchungw
以下是如何將一個實數值x無條件捨去到整數m(即m = ⎣x⎦,表示x向下取整)的Python程式碼示例。
python
Copy code
def floor_x(x):
    # 使用內建的向下取整函數
    m = int(x) if x >= 0 else int(x) - 1
    return m
# 範例使用
x = float(input("請輸入一個實數值: "))
m = floor_x(x)
print("無條件捨去之整數:", m)
在這段代碼中,floor_x函數負責執行無條件捨去的操作。對於非負實數x,直接將x轉換為int型別即可實現無條件捨去,因為這將自動刪除小數點後的所有數字。對於負數,我們先將其轉換為int型別(這會將其向零取整),然後再減去1,以確保結果是向下取整的。例如,-3.7轉換為int後是-3,再減去1得到-4,這正是-3.7向下取整的結果。
請注意,Python也有一個內建的math.floor()函數可以直接實現向下取整的功能,如果你不需要處理特殊邊界條件(比如正負無限大或NaN值),那麼直接使用math.floor(x)可能更為直接和方便。