当前位置: 代码迷 >> 综合 >> EOJ Monthly 2018.5 (校赛网络同步赛)A. 浮点数模运算
  详细解决方案

EOJ Monthly 2018.5 (校赛网络同步赛)A. 浮点数模运算

热度:89   发布时间:2023-11-20 06:04:26.0
A. 浮点数模运算

几乎每个学 C 语言的人都会面临这样一种困惑:为什么 % 只支持整数和整数,不支持浮点数。自然,C++ 提供了运算符重载几乎可以很方便地实现自定义的浮点数模运算,但到底是不方便的。

而与此相对比的,Java / Python 等高级语言就直接支持了浮点数模运算。

本题就是:给两个浮点数 ab,求 amodb

然后你会发现,事情并不简单。

Input

一行两个浮点数 ab (0<a,b109),ab 保证保留到小数点后第九位

Output

输出浮点数,相对误差或绝对误差不超过 10?15

假设你的答案是 a,标准答案是 b,你的答案正确当且仅当 |a?b|max(1,|b|)<10?15

Examples

input
3.000000000 2.000000000
output
1.000000000
input
0.400000000 0.200000000
output
0
import java.util.Scanner; 
import java.math.BigDecimal; 
public class Main {public static void main(String[] args) {Scanner sc = new Scanner(System.in);BigDecimal a = sc.nextBigDecimal();BigDecimal b = sc.nextBigDecimal();System.out.printf("%.9f",a.remainder(b));}
}

  相关解决方案