資訊學奧賽一本通 1029:計算浮點數相除的餘 | OpenJudge NOI 1.3 11
【題目連結】
ybt 1029:計算浮點數相除的餘
OpenJudge NOI 1.3 11:計算浮點數相除的餘數
【題目考點】
1. 輸出浮點型量,小數尾部沒有多餘的0
假設有double x = 1.300;
cout<<x;//輸出1.3
printf("%g", x);//輸出1.3
2. 浮點型量向下取整方法
- 強制轉換為整型 int(x)
- 呼叫floor()函式(注意:floor()返回double型別)
【解體思路】
這裡餘數(r)的定義是:a = k * b + r,其中k是整數,a > 0, b > 0, 0 <= r < b。
可以理解為,a中至多包含k個b。所以有k為a / b的值向下取整。
將該等式變換為:r = a - k * b,即可求出餘數r
【題解程式碼】
解法1:使用cin,cout進行輸入輸出
使用強制型別轉換
#include <bits/stdc++.h>
using namespace std;
int main()
{
double a, b;
cin>>a>>b;
cout<<a - int(a/b) * b;//或a - floor(a/b) * b
return 0;
}
解法2:使用scanf,printf進行輸入輸出
#include <bits/stdc++.h>
using namespace std;
int main()
{
double a, b;
scanf("%lf %lf", &a, &b);
printf("%g", a - int(a/b) * b);//或a - floor(a/b) * b
return 0;
}
相關文章
- 資訊學奧賽一本通 1010:計算分數的浮點數值 | OpenJudge NOI 1.3 05
- 資訊學奧賽一本通 1035:等差數列末項計算 | OpenJudge NOI 1.3 18
- 資訊學奧賽一本通 1027:輸出浮點數 | OpenJudge NOI 1.1 07
- 資訊學奧賽一本通 1012:計算多項式的值 | OpenJudge NOI 1.3 07
- 資訊學奧賽一本通 1032:大象喝水 | OpenJudge NOI 1.3 14
- 資訊學奧賽一本通 1051:分段函式 | OpenJudge NOI 1.4 13函式
- 資訊學奧賽一本通 1016:整型資料型別儲存空間大小 | OpenJudge NOI 1.2 01資料型別
- 資訊學奧賽一本通 1018:其他資料型別儲存空間大小 | OpenJudge NOI 1.2 03資料型別
- 資訊學奧賽一本通1099:第n小的質數 視訊題解
- 資訊學奧賽一本通 1230:尋找平面上的極大點(evd)
- 資訊學奧賽一本通 1118:鋪地毯 視訊題解
- 資訊學奧賽一本通 1218:取石子游戲(NIM)
- 資訊學奧賽一本通 1289:攔截導彈(evd)
- 資訊學奧賽一本通 1272:分組揹包(evd)
- 資訊學奧賽考點
- 資訊學奧賽一本通 1322:攔截導彈問題(evd)
- 資訊學競賽中計算結果對 $10^9+7$ 取餘數的原因
- 信奧一本通1187:統計字元數字元
- 計組之資料運算:9、浮點數的表示
- C++奧賽一本通貪心題解C++
- 信奧一本通1403:素數對
- js中浮點數計算常用方法JS
- js精確計算浮點數相加JS
- 一、資訊學奧賽簡介
- 浮點數在計算機底層的表示及運算計算機
- js處理浮點數計算誤差JS
- 浮點數線上轉hex計算工具
- 信奧賽C++老師解一本通題: 1180:分數線劃定C++
- JavaScript浮點數加減乘除精確計算JavaScript
- 計算機組成原理浮點數加減計算機
- 深入理解浮點數的運算
- 圖解計算機中的數值範圍和浮點運算圖解計算機
- 南沙C++信奧賽陳老師解一本通題 1117:整數去重C++
- 突破資訊學奧賽生天花板
- 信奧賽陳老師解一本通題: 1070:人口增長
- python中精確的浮點數運算Python
- 為什麼計算機對浮點型數字計算存在誤差計算機
- 計算機組成原理白學了,再次回顧浮點數加減計算機