1029:計算浮點數相除的余


【題目描述】
計算兩個雙精度浮點數a和b的相除的余數,a和b都是雙精度浮點數。這里余數(r)的定義是:a=k×b+r,其中k是整數,0≤r<b。

【輸入】
輸入僅一行,包括兩個雙精度浮點數a和b。

【輸出】
輸出也僅一行,a÷b的余數。

【輸入樣例】
73.263 0.9973
【輸出樣例】
0.4601
題目分析:
本題考察余數的定義,有的同學會直接使用取余運算符與計算余數,結果會報錯,原有是取余運算符%只適用與整型之間,本題是浮點數。
所以會報錯,這里我們要先搞清楚,什么是余數,余數本質上是除法過程中沒有被除盡的部分,剩余的部分,那怎么再不使用取余運算符
的情況下去計算余數呢,這里我們舉個例子:
求10除以3的余數,我們都知道結果為1,怎么來的呢,是因為10除以3的商為3,並且在一個除法算式里,被除數、余數、除數和商的關系為:(被除數-余數)÷除數=商,記作:被除數÷除數=商··· ···余數
這里我們要求余數,只需要把商求出來就行了,帶入公式,余數 = 被除數÷除數-商。

#include<iostream>
using namespace std;
int main(){
    double a,b,r,k;
    cin>>a>>b;
    k=int(a/b);
    r = a - k*b;
    cout<<r;
    return 0;
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM