一、輸入一個實數值(變數 x),撰寫程式(任何程式語言均可)來轉換 x 為:(一)無條 件捨去之整數(變數m, m = [x]);及(二)無條件進位之整數(變數n, n = [x])。
詳解 (共 6 筆)
詳解
/* 本程式由 Dev C++ 4.9.9.2 測試執行ok */
#include
# include
#include
using namespace std;
float x,m;
int main()
{
cout << "請輸入一個實數:" << endl;
cin >> x;
m = floor(x); /*此函數取最大整數 5.3 => 5 -5.6 = -5*/
printf("無條件捨去為: %10.0f\n",m);
m = ceil(x);
printf("無條件進位為: %10.0f\n",m);
system("PAUSE");
return 0;
}
#include
# include
#include
using namespace std;
float x,m;
int main()
{
cout << "請輸入一個實數:" << endl;
cin >> x;
m = floor(x); /*此函數取最大整數 5.3 => 5 -5.6 = -5*/
printf("無條件捨去為: %10.0f\n",m);
m = ceil(x);
printf("無條件進位為: %10.0f\n",m);
system("PAUSE");
return 0;
}
詳解
double x;
Console.write(Math.Floor(x));
Console.write(Math.Ceiling(x));
詳解
a=100
詳解
int x,n,m;
m=floor(x);
n=ceiling(x);
詳解
float
詳解
無條件捨去和無條件進位。我將以 Python 語言示範如何實現這兩種轉換。
無條件捨去
無條件捨去,即取一個數的整數部分,不考慮小數。Python 中可以使用 math.floor() 函數或者直接對實數使用 int() 函數來實現。math.floor() 函數適用於負數時也能正確無條件捨去到更小的整數,而 int() 函數將直接去除小數部分。
無條件捨去,即取一個數的整數部分,不考慮小數。Python 中可以使用 math.floor() 函數或者直接對實數使用 int() 函數來實現。math.floor() 函數適用於負數時也能正確無條件捨去到更小的整數,而 int() 函數將直接去除小數部分。
無條件進位
無條件進位意味著不論小數部分為何,都將實數值進位到下一個整數。在 Python 中,可以使用 math.ceil() 函數實現。
無條件進位意味著不論小數部分為何,都將實數值進位到下一個整數。在 Python 中,可以使用 math.ceil() 函數實現。
這裡有一個實現上述兩個轉換的 Python 程式碼:
python
Copy code
import math
Copy code
import math
# 輸入一個實數值 x
x = float(input("請輸入一個實數值 x: "))
x = float(input("請輸入一個實數值 x: "))
# 無條件捨去到最接近的較小整數
m = math.floor(x)
m = math.floor(x)
# 無條件進位到最接近的較大整數
n = math.ceil(x)
n = math.ceil(x)
print(f"無條件捨去後的整數 m = {m}")
print(f"無條件進位後的整數 n = {n}")
此程式首先導入 math 模組來訪問 floor() 和 ceil() 函數。然後,它提示用戶輸入一個實數值 x。使用 math.floor(x) 來計算無條件捨去後的整數 m,並使用 math.ceil(x) 來計算無條件進位後的整數 n。最後,程式輸出這兩個結果。
print(f"無條件進位後的整數 n = {n}")
此程式首先導入 math 模組來訪問 floor() 和 ceil() 函數。然後,它提示用戶輸入一個實數值 x。使用 math.floor(x) 來計算無條件捨去後的整數 m,並使用 math.ceil(x) 來計算無條件進位後的整數 n。最後,程式輸出這兩個結果。
請注意,這裡的方括號 [x] 似乎是在描述數學符號,而不是程式語言中的語法。在數學中,通常用它來表示取整數部分。在程式設計中,我們用相應的函數來實現這一過程。