1. 程式人生 > >NOI-1.3-11-計算浮點數相除的余數

NOI-1.3-11-計算浮點數相除的余數

noi 雙精度 精度 top sca 小數 page con -1

11:計算浮點數相除的余數

  • 查看
  • 提交
  • 統計
  • 提問
總時間限制:
1000ms
內存限制:
65536kB
描述

計算兩個雙精度浮點數a和b的相除的余數,a和b都是正數的。這裏余數(r)的定義是:a = k * b + r,其中 k是整數, 0 <= r < b。

輸入
輸入僅一行,包括兩個雙精度浮點數a和b。
輸出
輸出也僅一行,a÷b的余數
樣例輸入
73.263 0.9973
樣例輸出
0.4601
提示
註意:輸出時小數尾部沒有多余的0,可以用下面這種格式:
double x;
x = 1.33;
printf("%g", x);
下面是正確的方法,從網上找到的,真的寫的又簡單又好
#include <iostream>
#include 
<algorithm> #include <stdio.h> #include <string> #include <ctype.h> using namespace std; int main() { double r1, r2, R; scanf("%lf%lf", &r1, &r2); int k = r1/r2; R = r1 - k*r2; printf("%g\n", R); return 0; }

下面是我寫的錯誤的,但是不知道哪裏錯了

#include <iostream>
#include 
<algorithm> #include <stdio.h> #include <string> #include <ctype.h> using namespace std; int main() { double r1, r2, R; scanf("%lf%lf", &r1, &r2); // R = r1%r2; while (r1 >= 0.0 && r1 > r2){ r1 = r1 - r2; } printf("%g", r1);
return 0; }

NOI-1.3-11-計算浮點數相除的余數